Windows环境下命令行启动JMeter压测本地SpringBoot项目失败该如何解决?
解决JMeter 5.5 + Java 1.8.0_102启动失败的问题
这个问题我之前帮同事排查过,核心就是Java版本和JMeter版本不兼容导致的。
问题根源
JMeter 5.5的官方最低Java版本要求是Java 8 Update 202(即1.8.0_202),或者更高的Java 11/17 LTS版本。你当前用的1.8.0_102版本太老了,而--add-opens是Java 9及以后才支持的JVM参数,JMeter 5.5启动时会自动注入这类参数来适配高版本Java,但老版Java 8根本识别不了,所以才会抛出「无法创建Java虚拟机」的错误。
两种可行解决方案
方案一:升级Java版本(推荐)
这是最稳妥的长期解决方案,毕竟高版本Java不仅能解决JMeter的问题,还能获得更好的性能和安全补丁:
- 下载Java 8 Update 202及以上的版本(比如OpenJDK 8u391,或者Oracle JDK 8u391),也可以直接升级到Java 11(LTS长期支持版本,稳定性更好)
- 安装完成后,修改系统的
JAVA_HOME环境变量,指向新安装的Java目录 - 打开命令提示符,输入
java -version确认版本已经更新成功 - 重新执行你的JMeter命令:
D:\software\apache-jmeter-5.5\bin>jmeter -n -t D:\software\apache-jmeter-5.5\test\test1.jmx -l D:\software\apache-jmeter-5.5\test\result.txt -e -o D:\software\apache-jmeter-5.5\test
方案二:降级JMeter版本
如果暂时不想升级Java,可以选择降级JMeter到兼容老版Java 8的版本:
- JMeter 5.4.3及以下版本对Java 8的要求更低(支持1.8.0_181+),你可以下载JMeter 5.4.2或者5.3版本
- 替换掉当前的JMeter目录,把你的测试脚本迁移过去(大部分JMeter脚本是向下兼容的,基本不用修改)
- 再执行原来的命令行指令即可
快速验证技巧
执行测试命令前,先在命令行输入jmeter -v,如果能正常显示JMeter版本和对应的Java版本信息,说明环境配置没问题,再正式运行压力测试。
内容的提问来源于stack exchange,提问作者miniWorld
相关产品推荐
相关产品推荐

