Java Mission Control代码分析器为空

时间:2016-01-21 15:16:46

标签: java jmc

当被分析的应用程序将XX:MaxJavaStackTraceDepth系统属性设置为-1时,我在使用Java Mission Control时遇到问题。

重现:

  1. 启动java applciation:java -XX:+ UnlockCommercialFeatures -XX:+ FlightRecorder -XX:MaxJavaStackTraceDepth = -1
  2. 使用默认设置
  3. 为该应用制作航班录音
  4. 查看生成记录中的“代码”部分。它会是空的,如:http://imgur.com/if27cUu
  5. 系统:Ubuntu 14.04 / amd64。 Java 1.8.0_72。

    有关为何会发生这种情况的任何建议?我想保持我的堆栈跟踪无限制(由于一些罕见的堆栈溢出异常很难找到,除非你有堆栈跟踪的开头)。

    -1值来自此处:http://stas-blogspot.blogspot.se/2011/07/most-complete-list-of-xx-options-for.html#MaxJavaStackTraceDepth

    修改 原始问题错误地将责任归咎于java.endorsed.dirs系统属性。我有一堆属性设置,必须在消除过程中感到困惑。

1 个答案:

答案 0 :(得分:3)

我已经能够用-XX重现问题:MaxJavaStackTraceDepth = -1,并且发现至少一个相关的错误 - https://bugs.openjdk.java.net/browse/JDK-7179701,这是目前针对JDK 10的低优先级错误....我的建议是使用-XX:FlightRecorderOptions = stackdepth = 2048。我不能说我已经做了很多尝试这个选项,但至少它是为了与JFR一起工作。