【问题标题】:How do I fix JMeterPluginsCMD "Exception in thread "main" java.lang.ExceptionInInitializerError" error如何修复 JMeterPluginsCMD“线程“主”java.lang.ExceptionInInitializerError 中的异常”错误
【发布时间】:2021-12-28 02:28:53
【问题描述】:

我正在尝试在 Windows 上使用 JMeterPluginsCMD 在 JMeter 运行后生成负载测试结果图。我从 JMeter Plugins Manager 安装了插件。

当我运行命令时,我收到一条错误消息。我该怎么办?

`JMeterPluginsCMD.bat --generate-png "test.png" --input-jtl "...\test-3.jtl" --plugin-type ResponseTimesOverTime --width 800 --height 600`

插件JMeterPluginsCMD.bat 存在于JMETER_home/bin

我收到以下错误:

2021-11-17 09:54:35,131 WARN o.a.j.u.JMeterUtils: Exception 'Cannot invoke "java.util.Properties.getProperty(String, String)" because "org.apache.jmeter.util.JMeterUtils.appProperties" is null' occurred when fetching String property:'sampleresult.default.encoding', defaulting to: ISO-8859-1
2021-11-17 09:54:35,137 WARN o.a.j.u.JMeterUtils: Exception 'Cannot invoke "java.util.Properties.getProperty(String)" because "org.apache.jmeter.util.JMeterUtils.appProperties" is null' occurred when fetching String property:'jmeterPlugin.prefixPlugins'
2021-11-17 09:54:35,138 INFO k.a.j.PluginsCMDWorker: Using JMeterPluginsCMD v. N/A
2021-11-17 09:54:35,139 INFO o.a.j.u.JMeterUtils: Setting Locale to en_US
2021-11-17 09:54:35,147 INFO k.a.j.JMeterPluginsUtils: Loading user properties from: E:\Outcode\ProtocolNow\apache-jmeter-5.3\bin\user.properties
2021-11-17 09:54:35,148 INFO k.a.j.JMeterPluginsUtils: Loading system properties from: E:\Outcode\ProtocolNow\apache-jmeter-5.3\bin\system.properties
ERROR: java.lang.ExceptionInInitializerError
*** Problem's technical details go below ***
Home directory was detected as: E:\Outcode\ProtocolNow\apache-jmeter-5.3\lib
Exception in thread "main" java.lang.ExceptionInInitializerError
        at com.thoughtworks.xstream.XStream.setupConverters(XStream.java:990)
        at com.thoughtworks.xstream.XStream.<init>(XStream.java:593)
        at com.thoughtworks.xstream.XStream.<init>(XStream.java:515)
        at com.thoughtworks.xstream.XStream.<init>(XStream.java:484)
        at com.thoughtworks.xstream.XStream.<init>(XStream.java:430)
        at com.thoughtworks.xstream.XStream.<init>(XStream.java:383)
        at org.apache.jmeter.save.SaveService$XStreamWrapper.<init>(SaveService.java:82)
        at org.apache.jmeter.save.SaveService$XStreamWrapper.<init>(SaveService.java:80)
        at org.apache.jmeter.save.SaveService.<clinit>(SaveService.java:113)
        at org.apache.jmeter.save.CSVSaveService.processSamples(CSVSaveService.java:144)
        at org.apache.jmeter.reporters.ResultCollector.loadExistingFile(ResultCollector.java:380)
        at kg.apc.jmeter.PluginsCMDWorker.doJob(PluginsCMDWorker.java:138)
        at kg.apc.cmdtools.ReporterTool.processParams(ReporterTool.java:255)
        at kg.apc.cmdtools.PluginsCMD.processParams(PluginsCMD.java:62)
        at kg.apc.cmdtools.PluginsCMD.processParams(PluginsCMD.java:21)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:568)
        at kg.apc.cmd.UniversalRunner.main(UniversalRunner.java:115)
Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make field private final java.util.Comparator java.util.TreeMap.comparator accessible: module java.base does not "opens java.util" to unnamed module @75c072cb
        at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354)
        at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
        at java.base/java.lang.reflect.Field.checkCanSetAccessible(Field.java:178)
        at java.base/java.lang.reflect.Field.setAccessible(Field.java:172)
        at com.thoughtworks.xstream.core.util.Fields.locate(Fields.java:40)
        at com.thoughtworks.xstream.converters.collections.TreeMapConverter.<clinit>(TreeMapConverter.java:50)
        ... 20 more

【问题讨论】:

    标签: jmeter window jmeter-plugins


    【解决方案1】:

    在这方面寻求帮助的正确位置是JMeter Plugins Support Forum

    回到你的问题:

    JMeterPluginsCMD.bat中更改这一行:

    java -jar %~dp0\..\lib\cmdrunner-2.2.jar  --tool Reporter %*
    

    到这个:

    java --add-opens=java.base/java.util=ALL-UNNAMED -jar %~dp0\..\lib\cmdrunner-2.2.jar  --tool Reporter %*
    

    请注意,根据9 Easy Solutions for a JMeter Load Test “Out of Memory” Failure 文章,您应该始终使用最新版本的 JMeter,因此请考虑在下一个可用时升级到 JMeter 5.4.1(或JMeter Downloads 页面上提供的任何最新稳定版本)机会。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-26
      相关资源
      最近更新 更多