我可以从Eclipse/IDE调试器连接到远程机器上的jsadebugd进程吗?

Thi*_*yya 7 java eclipse debugging

我有一个在Linux机器上运行的java进程,但它无法在调试模式下启动/重新启动.我阅读了jsadebugd命令并启动了守护程序,但我想从IDE(可能是Eclipse)调试器或者YourKit或jconsole连接到它.我怎样才能做到这一点?远程JVM是1.6+.

jay*_*hao 1

我认为既然您提到了 Yourkit 和其他工具,您真正想做的是查看应用程序内的对象状态。有几个选项,尽管我不认为它能让您像 Eclipse 或其他调试器那样设置断点(尽管我有兴趣了解是什么限制您在调试模式下启动进程 - 技术) ? 过程?)

  1. 您是否尝试过连接:VisualVM?我不认为您需要以调试模式启动,它将使您能够导航对象图并检查对象。您甚至可以使用它来获取堆转储并使用OQL查询通过它们进行一些临时分析。

  2. 如果您在 JDK6+ 上运行 - 您是否尝试过使用 btrace 进行检测?sailfin 团队的一些注释听起来很有希望,就像 Solaris 中的 DTrace 一样,这似乎在各种情况下都很有用。