Jmeter-java请求执行报错:java.lang.NoSuchFieldError: INSTANCE

本次测试背景:

1.使用jmeter压力测试java接口,开发提供了一个jar,并且提供了依赖jar包

2.写完测试类后打包成jar,放入D:\software\apache-jmeter-2.13\lib\ext


3.可以正常启动jmeter.当执行用例时,错误出现了

报错截图:


如果大家遇到上面截图这个问题,不要慌张,慢慢排查问题

出现这个问题的原因,多半是因为某些jar重复了。



解决方案:

1.判断你要测试的jar包中是否有和jmeter一样的jar,根据我的测试,发现确实有两个jar相同

在我写的测试类中,引用的lib里



在jmeter(X:\XXXX\apache-jmeter-2.13\lib)里


可以看到,我的测试类里引用是4.4.1,但官网提供最新的jmeter的lib里还是4.2.X,所以我们将最新的jar(4.4.1),替换到X:\XXXX\apache-jmeter-2.13\lib下,使jmeter也拥有了新版本,这样问题就解决了。

总结:遇到以上问题,1.核对是否有重复jar   2.版本号是否一致


画外音:在此之前,开发提供给我的jar的版本号是4.2,没有发生此问题,因为Jmeter里的这两个Jar版本要高于开发提供的,所以jmeter默认使用了自己的;

当Jmeter里的这两个Jar版本低于开发提供的版本时,问题就暴露了。这也体现了java特性:向下兼容



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值