转载

解锁JMeter(一)——扩展jar包与依赖jar包

解锁JMeter(一)——扩展jar包与依赖jar包

阅读本文大约需要3分钟

前言

在使用自定义的Java Sampler,总是莫名奇妙地报找不到类——ClaasNotFound Exception,但实际上该类是存在的。究其原因,是因为不知道哪些jar包应该放在哪个目录。一般情况下,JMeter有2个默认的jar包路径:%JMETER_HOME%lib和%JMETER_HOME%lib/ext;有时候为了更有序地管理自定义的jar包,往往希望能够在%JMETER_HOME%lib目录下创建自定义的文件夹来分类存在jar包。但也因为没有真正理解哪个路径应该存放哪种类型的jar包,导致执行脚本过程中,总是猝不及防地报错。

定义

这里先介绍一下, 扩展jar包依赖jar包

扩展jar包(也称“协议测试jar包”):自己开发的脚本(jar文件),需要在Java Sampler等取样器中被识别的Java代码 ,包括组件和插件;默认情况,放在%JMETER_HOME%lib/ext 目录下。

注:脚本依赖的jar不要放在这里!

依赖jar包:脚本依赖的jar包或者其他jar(如JDBC,JMS实现类或者任何其他支持库);默认情况,放在%JMETER_HOME%lib 目录下。注:%JMETER_HOME%lib 目录下本身有很多jar包,拷贝脚本依赖的jar时一定要小心,如果有重复的jar包但版本不一致,一般情况下,保留高版本的jar,删除抵版本的jar即可(java一般需要遵从高版本向低版本兼容)。

扩展

如果不想将扩展jar放在lib/ext 目录下,可以在jmeter.properties配置文件中,配置search_paths。

操作步骤:打开%JMETER_HOME%/bin/jmeter.properties文件,搜索“search_paths ”,去掉注释符号“#”,设置自定义的目录。如search_paths=..lib/osp;..lib/testcase。

同理,如果不想将依赖jar放在lib目录下,可以在jmeter.properties配置文件中,配置user.classpath或者 plugin_dependency_paths。操作步骤同上。

备注:JMeter只识别.jar文件,不会对.zip等压缩文件进行扫描。

官方解释,可参考官方白皮书 JMeter Classpath 。

原文  http://yoyoyoky.github.io/2018/12/02/JMeter扩展jar包与依赖jar包/
正文到此结束
Loading...