首先本地需要有两款IDEA
- 可以是相同版本,也可以是不同版本。反正要有两个,一个用来调试代码,一个启动。
移除原有ja-netfiler
- 打开你的ja-netfiler的vmoptions目录,修改其中的idea.vmoptions文件。移除最后一行-javaagent ...参数,避免影响。
新增一个远程JVM调试
- 新增远程JVM调试,用作我们自己的ja-netfilter.jar的agent调试。
- 复制命令行参数。

- 添加到你的idea安装目录/bin的idea.bat中,添加到%ACC% 后

Launcher主类设置为jdk17
- idea运行时jdk需要和Launcher的jdk版本一致,所以需要设置为jdk17

新建一个复合程序
- 添加Launcher程序和远程调试程序

运行idea.bat
- 使用命令行运行idea.bat 出现正在监听5005端口,表示正常 
运行复合程序
- 选择带有Main的进程,参数随意

调试Ja-netfilter
- 上面在按下回车之前,记得在Launcher.agentmain方法的第一行打上一个断点。
- 键入回车后,正式进入agent的调试,此时会进入agent的入口方法agentmain中

随意发挥
- 后面就是Ja-netfilter加载它定义的插件了。
- 然后大家就都懂了,你可以在你想要看的地方打上断点