我正在尝试使用Java Flight Recorder(JFR)来分析Java代码的运行情况。为此,我使用终端命令:
java -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:StartFlightRecording=duration=500s,filename=myrecording.jfr -jar runnableJARFile.jar
这将运行我的程序并似乎创建.jfr记录文件,但是当我尝试在Java Mission Control中打开它时,出现错误:
'Loading events from myrecording.jfr' has encountered a problem.
The file format of myrecording.jfr is not supported. Try with a more recent version of Mission Control.
但是,我检查并运行了JMC 6.0.0(似乎是最新的)版本以及JDK 11.0.0(也似乎是最新版本)。当我检查更新时,两者都显示为最新。
有什么想法如何在JMC中打开JFR文件?
注意:我正在使用Eclipse作为IDE,但是似乎无法使飞行记录与该程序同时开始。这就是为什么我使用终端。 (正在运行OS X El Capitan)
答案 0 :(得分:1)
尝试JMC 7(现已开放源代码)的早期访问版本。这就是与JDK 11(或更早版本)一起使用的目的 https://jdk.java.net/jmc/
(JMC通常向后兼容)