我正在使用 intellij idea IDE,并且尝试在调试模式下从终端运行我的 jar 文件,并在代码中的几个位置设置断点。
我正在使用的命令是:java -jar myTestApp.jar -file "myfile.txt" -users myUser -Xdebug -Xrunjdwp:transport=dt_socket,server=127.0.0.1,suspend=n,address=8080
The problem is that I'm also using commons-cli library, so -Xdebug and -Xrunjdwp parameters are not recognized as Options, and I'm getting:
Any idea how to fix that?
请假设问题的作者在 2018 年没有使用 Java 5:
java -agentlib:jdwp=transport=dt_socket,address=8080,server=y,suspend=n -jar myTestApp.jar -file "myfile.txt" -users myUser
顺便说一句:如果你使用Java 9 及更高版本 https://docs.oracle.com/en/java/javase/index.html: 改变address=8080
to address=*:8080
因为 localhost 不再是默认值。
停止告诉人们使用-Xdebug
and -Xrunjdwp
Xdebug http://javahowto.blogspot.com/2010/09/java-agentlibjdwp-for-attaching.html用于 Java 5 及以下版本。从 Java 6 开始有-agentlib
可用的。Xdebug
允许访问调试器Xrunjdwp
。如果您使用,JIT 现在会以兼容模式启动Xdebug
并使用旧版调试器,这会极大地减慢您的调试速度。人们告诉然后使用-Djava.compiler=NONE
禁用兼容模式或添加-Xnoagent
禁用旧版调试器。不要这样做-agentlib
!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)