Intellij IDEA 中调试 maven 插件
话痨一下步骤1. classfinal-demo 项目部分2. ClassFinal 部分 参考资料话痨一下
目前有两个项目:
ClassFinal 是一款java class文件安全加密工具。classfinal-demo
是我建的一个Demo
,用来测试ClassFinal
的加密效果。
目前直接在命令行,执行命令加密是成功的:
java -jar classfinal-fatjar.jar -file jerry.jar -libjars a.jar,b.jar -packages com.jerry1,com.jerry2 -exclude com.jerry.Main -pwd 123456 -Y
但是接下想使用classfinal-maven-plugin
却始终无法成功。
(打包成功,但加密后的jar无法正常执行)
所以只好硬着头皮来看看源码。单步解千愁
步骤
在 Intellij IDEA 中调试 maven 插件分两部分:
1. classfinal-demo 项目部分
这就是我要调试的classfinal:classFinal
IDEA 中打开Terminal
位置项目根目录
执行mvndebug classfinal:classFinal
。以 debug 模式执行目标。成功后会便会监听8000
端口,等待调试。如果端口想换成9999
可以(CMD中执行):
set MAVEN_DEBUG_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=9999mvn classfinal:classFinal -X
2. ClassFinal 部分
Run
>Run/Debug Configurations
打开以下窗口。
创建一个Remote
名字自己随意,这里要Attach
的端口就是上面的8000
。其它都是默认。
把上面第一步的监听跑起来。在net.roseboy.classfinal.plugin.ClassFinalPlugin
中打好断点。运行这里的debug-plugin
就启动调试了。
参考资料
笑虾:Java Class 加密工具 ClassFinal