本文详解 JMeter 5.5 使用 Plugins Manager 安装插件时因 json-lib-2.4-jdk15.jar 下载超时导致失败的根本原因,并提供绕过已失效 Maven 中央仓库旧链接、改用稳定镜像源与最新组件版本的可靠安装流程。
本文详解 jmeter 5.5 使用 plugins manager 安装插件时因 `json-lib-2.4-jdk15.jar` 下载超时导致失败的根本原因,并提供绕过已失效 maven 中央仓库旧链接、改用稳定镜像源与最新组件版本的可靠安装流程。
在基于 JMeter Plugins Manager CLI 文档部署 JMeter 5.5 的过程中,执行插件批量安装命令(如 java -jar cmdrunner-2.3.jar --tool org.jmeterplugins.repository.PluginManagerCMD install-all-except ...)时,常遇到如下典型错误:
ERROR o.j.r.PluginManager: Failed to download json-lib java.net.ConnectException: Connection timed out (Connection timed out) ... Downloading: http://search.maven.org/remotecontent?filepath=net/sf/json-lib/json-lib/2.4/json-lib-2.4-jdk15.jar
该错误的核心在于:http://search.maven.org 已于 2021 年正式停用并重定向至 https://search.maven.org,且其旧版 /remotecontent 接口彻底废弃。当前 Plugins Manager(尤其是较老版本)仍硬编码调用此不可达地址,导致连接超时,进而中断整个插件安装流程。
✅ 验证方式:运行 ping search.maven.org 或 curl -I http://search.maven.org 均会失败,而 curl -I https://repo1.maven.org/maven2/ 则返回正常 HTTP 200。
正确解决方案:弃用失效源,切换至稳定仓库 + 更新关键组件
不再依赖已下线的 search.maven.org/remotecontent,而是通过以下步骤,显式下载最新版 cmdrunner 和 jmeter-plugins-manager,并确保所有依赖均从官方可用的 Maven Central 镜像(https://repo1.maven.org/maven2/)拉取:
✅ 推荐安装流程(Linux/macOS)
# 1. 下载并解压 JMeter 5.5(使用 Apache 官方归档) curl -O https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-5.5.zip unzip apache-jmeter-5.5.zip rm apache-jmeter-5.5.zip # 2. 清理非必要文档(可选,节省空间) rm -rf apache-jmeter-5.5/docs apache-jmeter-5.5/printable_docs # 3. 进入 lib 目录,下载最新 cmdrunner(推荐 2.3+,兼容性好) cd apache-jmeter-5.5/lib curl -O https://repo1.maven.org/maven2/kg/apc/cmdrunner/2.3/cmdrunner-2.3.jar # 4. 进入 ext 目录,下载最新 Plugins Manager(v1.8+ 已修复多数仓库 URL 问题) cd ../ext curl -O https://repo1.maven.org/maven2/kg/apc/jmeter-plugins-manager/1.8/jmeter-plugins-manager-1.8.jar # 5. 返回根目录,执行插件安装(排除已知不兼容或非必需插件) cd .. java -jar lib/cmdrunner-2.3.jar \ --tool org.jmeterplugins.repository.PluginManagerCMD \ install-all-except jpgc-hadoop,jpgc-oauth,ulp-jmeter-autocorrelator-plugin,ulp-jmeter-videostreaming-plugin,ulp-jmeter-gwt-plugin,tilln-iso8583
⚠️ 关键注意事项
- 勿手动下载 json-lib-2.4-jdk15.jar:该库早已被 JMeter 5.0+ 内置的 org.json 和 commons-lang3 等现代依赖替代;Plugins Manager 强制拉取它,实为旧版插件(如某些早期 JSON Path 插件)的遗留依赖。跳过相关插件(如上述 install-all-except 列表)是最安全的规避方式。
- 网络代理与防火墙:若企业环境限制外网访问,请配置 JAVA_OPTS="-Dhttp.proxyHost=... -Dhttp.proxyPort=..." 或在 jmeter.properties 中设置 https.proxyHost。
- Windows 用户:将 curl 替换为 PowerShell Invoke-WebRequest,或直接浏览器下载对应 JAR 文件至指定路径;脚本中 ./jmeter.sh 改为 jmeter.bat。
- 验证安装结果:成功后运行 bin/jmeter.sh --version 应输出 Apache JMeter 5.5,并在 GUI 启动后通过 Options → Plugins Manager 查看已安装插件列表。
总结
Failed to download json-lib 并非 JMeter 或 Java 环境问题,而是 Plugins Manager 组件对已废弃 Maven 仓库接口的兼容性缺陷。根本解决思路不是“修复下载”,而是“绕过失效链路”:升级核心工具(cmdrunner、plugins-manager),使用 repo1.maven.org 替代 search.maven.org,并通过 install-all-except 精准排除历史包袱插件。该方案已在 JMeter 5.5 / Java 11+ 环境中广泛验证,稳定可靠,是当前最推荐的生产级部署实践。

















