我正在尝试在Apache JMeter中创建Java请求。所以我用适当的类创建了一个jar。虽然如果我将jar文件放在JMETER_HOME/lib中就可以执行这个命令,但我不想用我的jar文件污染jmeter的分发。我尝试使用自己的属性文件和-p选项。我试过编辑JMETER_HOME/bin/jmeter.properties(不是很理想,但总比没有好)。在这两种情况下,我都尝试了search_paths、user.classpath和plugin_dependency_path的几种变体。例如:
- 用户.classpath=/tmp/myjmeter/lib
- 用户.classpath=/c/tmp/myjmeter/lib
- 用户.classpath=\tmp\myjmeter\lib
- 用户.classpath=C:\tmp\myjmeter\lib
我还尝试显式地包含jar:user.classpath= C:\tmp\myjmeter\lib\myjmeter.jar
在每种情况下,我都会在Java请求中得到:
在classpath中找不到Classname,请确保添加所需的jar并重新启动。
而且,是的,我每次尝试都重新启动了JMeter。我做错了什么?Windows 10
1条答案
按热度按时间5hcedyr01#
1.通常,您可以覆盖 * user.properties * 文件中的JMeter属性
1.如果你想使用
-p
函数,你还需要复制 * jmeter.properties * 文件中的所有内容(默认值)1.如果你想传递额外的属性文件,你应该使用
-q
选项关于Beanshell vs. JSR223 vs. Java For JMeter: Complete Showdown文章中的“在哪里放置”您的jar:
编译后的类需要放在JMeter安装的/lib/ext文件夹中。最好是将它放在.jar格式,这样JMeter就可以自动拾取它。否则,您需要修改JMeter类路径。
根据JMeter类路径:
如果你不想把JMeter插件jar放在lib/ext目录中,那么在jmeter.properties中定义属性search_paths。
如果你不想修改 * jmeter.properties * -使用上面的任何选项。也可以通过
-J
命令行参数覆盖该属性,如:Java Request采样器的自定义类示例:https://github.com/aboyfromipanema/java-sampler-rsa-encryption/tree/main/src/main/java/com/blazemeter/jmeter/scripting
以及JMeter附带的:https://github.com/apache/jmeter/tree/rel/v5.5/src/protocol/java/src/main/java/org/apache/jmeter/protocol/java/test