JMeter 引入 JAR 包的几种方法

JMeter 支持加载外部 JAR 文件,用于:

  • 扩展 JMeter 功能
  • 使用 Java 代码(BeanShell / JSR223)
  • 连接数据库 / 解析 Excel / 读取 CSV

📌 1. JMeter 引入 JAR 包的方式

✅ 方式 1:将 JAR 放入 lib/lib/ext/

  1. 找到 JMeter lib 目录

    复制代码
    cd /apache-jmeter-5.6.3/lib/
  2. 拷贝 JAR 文件

    复制代码
    cp /path/to/mylibrary.jar /apache-jmeter-5.6.3/lib/
  3. 如果是 JMeter 插件(如 JDBC 驱动),放入 lib/ext/

    复制代码
    cp mysql-connector-java.jar /apache-jmeter-5.6.3/lib/ext/
  4. 重启 JMeter

    复制代码
    jmeter

🚀 JMeter 会自动加载 lib/lib/ext/ 目录下的 JAR!


✅ 方式 2:在 jmeter.properties 指定 JAR 目录

  1. 打开 jmeter.properties

    复制代码
    nano /apache-jmeter-5.6.3/bin/jmeter.properties
  2. 修改 user.classpath,添加 JAR 目录

    复制代码
    user.classpath=dependencies/lib/*.jar
  3. 保存后重启 JMeter

    复制代码
    jmeter

✅ 方式 3:手动加载 JAR(BeanShell / JSR223 取样器)

如果 JAR 不在 lib/ 目录 ,可以在 BeanShell / JSR223 取样器中手动加载:

复制代码
// 手动加载 JAR
AddClassPath("/path/to/mylibrary.jar");

// 导入 Java 类
import com.example.MyClass;

MyClass obj = new MyClass();
log.info("✅ JAR 加载成功:" + obj.someMethod());

🚀 适用于 BeanShell / JSR223 运行时动态加载 JAR


📌 2. 验证 JAR 是否加载成功

✅ 方法 1:使用 jar tf 检查 JAR 内容

复制代码
jar tf /apache-jmeter-5.6.3/lib/mylibrary.jar | grep MyClass

如果 com/example/MyClass.class 存在,说明 JAR 包含正确的类。

✅ 方法 2:打印类路径

BeanShell 取样器 运行:

复制代码
log.info("✅ JMeter classpath: " + System.getProperty("java.class.path"));

如果 JAR 路径未包含 /apache-jmeter-5.6.3/lib/mylibrary.jar,说明 JMeter 没有加载 JAR。


📌 3. 解决 JAR 包未加载的问题

问题 解决方案
JAR 没有生效 放入 lib/,重启 JMeter
JMeter 找不到类 使用 user.classpath 指定 JAR
BeanShell / JSR223 仍然报错 手动 AddClassPath() 加载 JAR

🚀 推荐方案:放入 lib/,并在 jmeter.properties 配置 user.classpath,即可自动加载 JAR! 🔥

相关推荐
海姐软件测试2 天前
Postman参数化设置如何设置?
开发语言·jmeter
lifewange2 天前
Jmeter面试题
jmeter
一棵树长得超出它自己2 天前
jmeter if控制器在loop控制器执行结束后执行
前端·jmeter
zzhz9253 天前
Jmeter(性能指标、指标插件、测试问题、面试题、讲解稿)
java·jvm·jmeter
熙客3 天前
Jmeter-负载测试
jmeter·压力测试
ylatin3 天前
jmeter web压力测试 压测
jmeter·压力测试
zzhz9254 天前
Jmeter操作(数据库)
数据库·jmeter
小han的日常5 天前
Jmeter生成HTML测试报告
jmeter
熙客6 天前
Jmeter-功能测试
功能测试·jmeter
A~taoker7 天前
jmeter接口自动化+ant执行(方案)
运维·jmeter·自动化