jmeter之读取环境变量中的配置文件

新浪围脖>@o蜗牛快跑o   企鹅交流群>79642549


配置文件有两类:

一、路径相关配置文件,只需要了解清楚jmeter工作路径(参考:jmeter之相对路径差异化处理)或用绝对路径即可找到对应配置文件

二、环境变量中的配置文件,这类文件需要放到jmeter环境变量中

说道这里大家可能以为jmeter_home/bin目录是jmeter的classpath路径,其实不是;

再试试jmeter_home/lib,也不是;

又通过添加在user.properties添加classpath目录,还是无法加载;

最后使用必杀技能,修改jmeter.bat,通过java -cp config_dir -jar ApacheJMeter.jar %JMETER_CMD_LINE_ARGS%启动jmeter,结局失败。


几乎放弃的时候,苗头指向了-jar参数,又查了几篇博文,这才发现-jar参数会忽略-cp,以及环境变量CLASSPATH的参数

再后来看jmeter源码的时候也发现,jmeter对classloader有封装和重写,也不能用常用方法


经过千辛万苦找到了问题解决方法,使用java -Xbootclasspath/a:dir参数

jmeter启动脚本修改如下:

以免破坏jmeter原始启动文件,新建测试相关目录,新建config目录(脚本里会用到)

新建jmeter-start.bat或jmeter-start.sh

1. jmeter-start.bat

rem Windows
set JVM_ARGS=-Xbootclasspath/a:config
%jmeter_home%\bin\jmeter.bat

 2. 
jmeter-start.sh 

 
# linux
export JVM_ARGS=-Xbootclasspath/a:config
$jmeter_home/bin/jmeter.sh

-------------------------问题解决方案--------------------------

一 BootStrap class扩展方案

Java 命令行提供了如何扩展bootStrap 级别class的简单方法.
-Xbootclasspath:     完全取代基本核心的Java class 搜索路径.
                                   不常用,否则要重新写所有Java 核心class
-Xbootclasspath/a: 后缀在核心class搜索路径后面.常用!!
-Xbootclasspath/p: 前缀在核心class搜索路径前面.不常用,避免
                                   引起不必要的冲突.

注:为什么用-Xbootclasspath/a:可以实现,细心的朋友可以去查查,很多博文有介绍的


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值