java调试
调试jar包
- 复制jar包
- 右键粘贴到idea
![]()
- 反编译jar包(右键Add as a library)
- 添加remove jvm debug
![]()
![]()
![]()
![]()
红框为调试参数 - cmd启动jar包(调试参数跟在java后面 -jar xx.jar在后面)
- 在idea以调试模式运行程序(在添加了remove jvm debug后直接点确定点run-debug-run就是remove jvm debug的名字)
Unnamed就是remove jvm debug的名字 - 访问java的网页-如dvwa-127.0.0.1:8080的命令执行,输入命令即可在idea调试
坑点
调试没有反应可能是包没找到

这个时候要手动放一个jar包放进项目
- 用7z打开jar包找到要调试项目的包,如上面的org.unicodesec.dvwajava,把这个包压缩为zip包再改后缀为jar包,复制放进项目里面再反编译成java代码
![]()
再运行一遍调试程序即可
![]()
调试单个class文件
IDEA 支持对于 Jar 包自动反编译并添加断点,但是对于单个 Class 文件,却只会自动反编译,并不允许我们调试添加断点。
那么怎么调试呢?
首先反编译 Class 文件,找到 Class 文件的全限定名,例如 com.unicodesec.MyClass。根据全限定名,创建目录,例如创建 com 目录,在 com 目录中创建 unicodesec 目录,在 unicodesec 目录中放入我们的 Class 文件。回到 com 目录中,对 com 目录进行 zip 压缩,并将压缩包的后缀名改成 jar。随后只需要将 jar 包添加到 IDEA 中,按照上面的 Jar 包调试即可。
通用jar文件的main方法
首先反编译一个jar包后会有一个META-INF文件夹,里面有一个MANIFEST.MF文件,里面的main-class就是他主函数

新建一个class文件调用这个main方法,把要调用的main函数所在的路径复制在新建的class文件中
- 找到主函数复制路径选复制引用
![]()
![]()
- 在新建的class文件中导入这个路径再调用这个main函数即可通过运行自己新建的class去运行jar包中的main函数
![]()











浙公网安备 33010602011771号