You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins部署大文件至Artifactory时挂起问题求助

排查Jenkins部署大Spring Boot JAR到Artifactory挂起问题

可能的原因及排查步骤

1. Jenkins端上传超时或内存限制

  • 检查Jenkins代理节点的内存配置:大文件上传时,代理节点可能因内存不足导致进程挂起。修改Jenkins代理的JVM启动参数,增加堆内存,比如在启动脚本中添加-Xmx2G -Xms1G(可根据实际情况调整)。
  • 调整Artifactory插件的超时设置:在Jenkins全局配置的Artifactory服务器设置中,将超时值调至更大(比如300000毫秒,即5分钟)。如果是流水线脚本配置,确保添加timeout参数,示例:
    artifactoryUpload(serverId: 'artifactory-server', spec: '''{
      "files": [
        {
          "pattern": "target/*.jar",
          "target": "libs-release-local/com/example/"
        }
      ]
    }''', timeout: 300)
    

2. Artifactory端Tomcat的隐式限制

  • 补充Tomcat的maxSwallowSize参数:虽然已设置maxPostSize=-1,但maxSwallowSize默认会限制客户端在请求中止后发送的数据量,可能影响大文件上传。修改配置如下并重启Artifactory:
    tomcat:
      connector:
        extraConfig: "maxPostSize='-1' connectionTimeout='1500000' maxSwallowSize='-1'"
    
  • 检查Artifactory服务器的磁盘IO负载:大文件上传时磁盘读写瓶颈可能导致任务挂起,用iostat、top等工具查看磁盘使用率、读写速度,确认是否存在慢IO或磁盘空间不足的情况。

3. Spring Boot JAR结构的特殊影响

Spring Boot可执行JAR包含嵌套的BOOT-INF/lib目录,结构比普通WAR更复杂,可能触发插件或Artifactory的特殊处理逻辑:

  • 改用JFrog CLI上传替代Jenkins插件:在流水线中调用jf rt upload命令上传大JAR,验证是否能成功,示例:
    jf rt upload target/your-app.jar libs-release-local/com/example/ --server-id artifactory-server
    
    如果CLI上传正常,说明是Jenkins插件的问题,可尝试升级Artifactory Plugin至最新兼容版本(当前使用3.18.9,最新版已更新至4.x系列)。
  • 临时关闭Artifactory的哈希校验计算:上传大文件时,哈希值计算可能占用大量服务器资源,导致处理缓慢。可临时关闭校验或在上传时指定跳过校验(需注意风险),验证是否能完成上传。

4. 网络层面的连接限制

  • 测试直接网络上传:在Jenkins服务器上用curl直接调用Artifactory REST API上传大文件,排查是否存在防火墙、代理的超时限制,示例:
    curl -u username:password -T target/your-app.jar https://artifactory-url/libs-release-local/com/example/your-app.jar
    
    如果curl上传也挂起,说明是网络问题,需排查防火墙、代理的连接超时设置。

总结

优先通过网络测试、JFrog CLI上传排除环境问题,再检查Jenkins代理内存、插件超时配置,最后调整Artifactory的Tomcat参数和存储性能。由于其他用户大WAR上传正常,大概率是Spring Boot JAR的上传流程触发了插件或Tomcat的特定限制,替换上传方式是快速验证的有效方法。

内容的提问来源于stack exchange,提问作者Steffen Lomholt Hansen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 23:30:14