如何获取打印在J9 VM(Linux)上的调试信息?

时间:2010-09-09 13:26:49

标签: java configuration debugging jvm j9

我正在使用J9 VM在Linux机器(BusyBox)上运行我的应用程序。 在我的Windows环境中开发和测试时,也使用J9,我可以获得有关堆栈跟踪的完整调试信息。这不会发生在Linux机器上。

我已根据我的知识许可检查了两个VM配置。另外,我已经剥离了我的Windows J9安装库,这些库不在Linux J9安装上。

有没有人知道如何获取调试信息而不是“未知来源”?是否有打印此信息的配置?

Windows输出:

>j9 -jcl:foun11 Test
java.lang.Exception
        at Test.doStuff(Test.java:6)
        at Test.main(Test.java:11)

Linux输出:

#j9 -jcl:foun11 Test
java.lang.Exception
        at Test.doStuff(Unknown Source)
        at Test.main(Unknown Source)

(两个输出都引用相同的Test.class,使用-g:lines,vars,source编译。)

谢谢!

1 个答案:

答案 0 :(得分:2)

根据这篇documentation,以下选项可用于显示缺失的信息:

  

-Xlinenumbers
  显示堆栈跟踪中的行号以进行调试。另见-Xnolinenumbers。默认情况下,行号已打开。

显然,默认情况下,行号已关闭。但是,正如文件所述,该选项是“非标准的,如有更改,恕不另行通知”。它现在可以使用。

希望这个答案对将来的任何人都有用。