我正在调试一个jnlp应用程序,过去我可以通过eclipse远程调试它,但现在不能了。
启动它的命令是:
/usr/java/jdk1.6.0_14/jre/bin/java -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=1445 -Djnlpx.heapsize=64m,512m -DtrustProxy=true -Xverify:remote -Djava.security.policy=/lib/security/javaws.policy -Dfile.encoding=UTF-8 -Xbootclasspath/a:/usr/java/jdk1.6.0_14/jre/lib/deploy.jar:/usr/java/jdk1.6.0_14/jre/lib/javaws.jar:/usr/java/jdk1.6.0_14/jre/lib/plugin.jar -classpath /usr/java/jdk1.6.0_14/jre/lib/deploy.jar com.sun.javaws.Main launch.jnlp
Listening for transport dt_socket at address: 1445
问题在于当我连接eclipse调试器时,它会关闭并重新启动;因此调试器附加到第一个进程上;当该进程终止时,调试器也会停止。
实际上,调试器脚本并不重要;如果suspend=n,则在调试器启动之前,jnlp进程会自动重新启动。
我已经尝试过追踪它,但选项-XX:TraceSupport=true(以及我尝试过的其他变体)会导致jvm错误。
我正在使用fedora 11,Eclipse Java EE IDE for Web Developers。(Build id: 20090621-0832)
我想知道是否有人知道如何解决这个问题,或者至少如何打开更好的日志记录(即,捕获所有控制台输出到日志中;以便我可以查看在屏幕上闪现一毫秒的第一个控制台)。谢谢!