JMeter -在命名空间中未找到JSONObject错误(仅通过CLI)

vwkv1x7d  于 12个月前  发布在  其他
关注(0)|答案(1)|浏览(196)

在Macbook上通过CLI运行脚本时,使用Java/Beanshell 2.0b6时遇到错误,而通过GUI运行时不会发生;

2023-12-04 16:52:47,858 ERROR o.a.j.m.JSR223PreProcessor: Problem in JSR223 script, JSR223 PreProcessor - Create tokenPayload
javax.script.ScriptException: Sourced file: inline evaluation of: ``import org.apache.jmeter.protocol.http.control.CookieManager;   import org.apach . . . '' : Typed variable declaration : Class: JSONObject not found in namespace : at Line: 10 : in file: inline evaluation of: ``import org.apache.jmeter.protocol.http.control.CookieManager;   import org.apach . . . '' : JSONObject 
 in inline evaluation of: ``import org.apache.jmeter.protocol.http.control.CookieManager;   import org.apach . . . '' at line number 10
    at bsh.engine.BshScriptEngine.evalSource(BshScriptEngine.java:93) ~[bsh-2.0b6.jar:2.0b6 2016-02-05 05:16:19]
    at bsh.engine.BshScriptEngine.eval(BshScriptEngine.java:46) ~[bsh-2.0b6.jar:2.0b6 2016-02-05 05:16:19]
    at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:231) ~[java.scripting:?]
    at org.apache.jmeter.util.JSR223TestElement.processFileOrScript(JSR223TestElement.java:219) ~[ApacheJMeter_core.jar:5.4.2]
    at org.apache.jmeter.modifiers.JSR223PreProcessor.process(JSR223PreProcessor.java:45) [ApacheJMeter_components.jar:5.4.2]
    at org.apache.jmeter.threads.JMeterThread.runPreProcessors(JMeterThread.java:965) [ApacheJMeter_core.jar:5.4.2]
    at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:549) [ApacheJMeter_core.jar:5.4.2]
    at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:489) [ApacheJMeter_core.jar:5.4.2]
    at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:256) [ApacheJMeter_core.jar:5.4.2]
    at java.lang.Thread.run(Thread.java:1589) [?:?]

字符串
org.json .jar文件存在于/lib中,JMETER_HOME类路径似乎被正确设置为安装目录。任何人都可以告诉可能的问题是什么,为什么在运行时找不到jar?
(Note- 感谢我应该使用JSR 223/ Groovy,但Java版本(19)和JMeter版本(5.4.2)之间有一点脱节,阻止我为有问题的代码这样做)
我只是想了解为什么GUI和CLI之间存在断开连接

q9rjltbz

q9rjltbz1#

1.不应该有“断开连接”,最有可能的是你正在运行不同的JMeter版本的“CLI”和“GUI”模式,比较两者的jmeter.log文件,你应该看到JMeter二进制文件的完整路径,Classpath等。
1.如果你想使用Groovy,你可以在JMeter安装的“lib”文件夹中使用update Groovy libraries,或者降级到Java 17
1.建议始终使用最新版本的JMeter,因此请考虑升级到JMeter 5.6.2JMeter Downloads页面上提供的最新稳定版本。

相关问题