用Eclipse调试jnlp应用程序
问题描述:
我似乎无法用Eclipse调试JNLP应用程序。我遇到的问题与this SO question中描述的非常相似,即,javaws
似乎是两次启动VM。第一次使用远程调试选项可以很好地开始,并且假如我使用suspend=y
选项,我甚至可以将Eclipse调试器附加到VM,但是一旦它挂上虚拟机,javaws
就会再次启动,而没有调试选项。用Eclipse调试jnlp应用程序
这里是我如何启动应用程序:
javaws -J-Xdebug -J-Xnoagent -J-Djava.compiler=NONE -J-Xrunjdwp:transport=dt_socket,address=8989,server=y,suspend=y http://myserver/launch.jnlp
因为我有suspend=y
,同时它的等待调试器附加我可以用ps -ef | grep java
看到所有正确的选项运行Java程序。实际上,我可以将Eclipse调试器连接到它,但只要我这样做,该过程终止,并且javaws
开始一个新的java进程。如果我随后执行另一个ps
,则可以看到一个新的(不同的PID)java进程,但没有调试选项。试图从Eclipse连接到这个进程只是“拒绝连接”。
我在Mac OS X Lion 10.7.3上使用Java 6,如果这有什么区别的话。
我上面提到的SO问题的作者说他明显地意外地解决了这个问题,所以问题的原因并不明显(或者我太愚蠢了)。
任何想法?
答
检查你是否有更多的Java 7更新67. 如果你知道oracle有这个开放的错误。 一些如何从更新67和以上有这个问题。 我有同样的问题。我回滚到Java 7更新60,现在工作正常。我建议删除所有Java安装,然后安装