Java 任务控制 – 飞行记录器抛出解析器异常

Ant*_*ais 5 java profiler profiling clojure jmc

我正在尝试使用 JMC 分析 Clojure 应用程序,但当我尝试启动飞行记录器时出现以下异常:

java.lang.UnsupportedOperationException: This parser does not support specification "null" version "null"
Run Code Online (Sandbox Code Playgroud)

JMC 确实让我启动 MBean 服务器,所以我很困惑。

我使用 -consoleLog 选项运行 JMC,并在尝试启动 Flight Recorder 时得到以下结果:

!SESSION 2016-02-25 09:41:32.311 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.8.0_45
java.vendor=Oracle Corporation
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_GB
Command-line arguments:  -os macosx -ws cocoa -arch x86_64 -consoleLog

!ENTRY com.jrockit.mc.core 4 0 2016-02-25 09:41:49.289
!MESSAGE java.lang.UnsupportedOperationException: This parser does not support specification "null" version "null"
Run Code Online (Sandbox Code Playgroud)

我在搜索中没有发现任何提及此问题的信息,并且有点不知从何进行调查。有人有什么建议吗?

谢谢!

Ant*_*ais 2

我找到了罪魁祸首。

我尝试在一个空白的 Clojure 项目上运行飞行记录器,它成功了。所以我推断问题一定出在代码中的某个地方,要么是我的,要么是依赖项。

我将每个依赖项添加到我的空白项目中,发现Dali导致了该错误。

我不知道大理到底是什么原因造成的!

  • 啊,我对错误消息中的“解析器”感到困惑,并认为这是对实际飞行记录的解析。但似乎是jfc设置文件的解析。一种理论是 Dali 搞乱了 xml 解析器设置,我们之前也见过类似的问题。尝试使用 -Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl 运行(请参阅 https://community.oracle.com/thread/3618691?start=0&tstart=0 ) (5认同)