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

如何修复Jenkins构建React应用流水线的‘script returned exit code 1’错误

排查Jenkins构建React应用返回错误码1的方案

1. 先抓详细错误日志

错误码1只是通用失败标记,必须看Jenkins控制台输出的完整报错信息——里面肯定有具体的失败原因,比如依赖装不上、Node版本不对、权限不足、环境变量缺失这些细节,这是排查的核心第一步。

2. 对比本地与Jenkins的环境差异

  • Node.js/npm版本:本地执行node -v和npm -v,在Jenkins流水线里加两步打印版本:
    sh 'node -v'
    sh 'npm -v'
    
    版本不匹配是常见坑,比如某些React依赖对Node版本有硬性要求,用Jenkins的NodeJS插件配置和本地一致的版本就行。
  • 依赖安装逻辑:本地用npm还是yarn?Jenkins里必须用同款。另外可以尝试清理Jenkins工作区的旧依赖:
    sh 'rm -rf node_modules package-lock.json'
    sh 'npm install'
    
  • 环境变量:本地有没有自定义的REACT_APP_*这类环境变量?Jenkins里要同步配置,也可以在流水线里打印环境变量对比:
    sh 'printenv'
    

3. 检查Jenkins工作区权限

Jenkins默认用jenkins用户运行,可能没有工作区的读写权限,导致装依赖或写构建产物失败。在流水线里加两步验证:

sh 'whoami'
sh 'ls -la'

如果权限不够,调整Jenkins工作目录的权限就行,别随便用sudo,尽量给jenkins用户配好对应目录的读写权限。

4. 在Jenkins服务器上手动复现

切换到Jenkins运行的用户,手动跑一遍构建流程:

su jenkins
cd /var/lib/jenkins/workspace/你的项目目录
npm install
npm run build

直接在服务器上操作能看到更直观的报错,比在Jenkins日志里找更高效,能快速定位问题。

5. 核对构建命令细节

检查Jenkins里的构建命令和本地是否完全一致:有没有拼写错误(比如把build写成bild)?有没有漏加本地用的参数?比如本地是否指定了自定义配置文件,Jenkins里没加?

常见问题的快速解决

  • 依赖安装失败:大概率是Jenkins访问不了npm仓库,换国内镜像试试:
    sh 'npm install --registry=https://registry.npmmirror.com'
    
  • Node版本不兼容:在Jenkins的NodeJS插件里添加对应版本,然后在流水线中指定:
    nodejs('Node.js 18') { // 这里填你配置的Node版本名称
        sh 'npm install'
        sh 'npm run build'
    }
    
  • 内存不足:React构建吃内存,给Node加内存参数:
    sh 'NODE_OPTIONS="--max-old-space-size=4096" npm run build'
    

内容的提问来源于stack exchange,提问作者sarfraz ahmad

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 13:17:47