Jenkins 前端项目点击构建导致无限加载。

使用 Docker 部署的 Jenkins 在网页上点击构建指定前端项目时,构建正常开始运行,网页上也能输出 console output ,然后 git 的更新文件部分是正常的,但是跑到前端的 node 命令时,一直卡在 loading 中(加载效果一直在转),没有任何反应,直至手动终止构建。

但是该前端项目,在 git 上拉取下来,放在任何一个电脑上,都能使用相同的命令成功在本地构建,能保证仓库上分支和代码版本是一致的,本地的 node/npm 版本和 npm 命令与 Jenkins 里的设置也是一致的。

前端构建的命令是 npm run limit && npm run build,对应的脚本是 cross-env LIMIT=4096 increase-memory-limit 和 vue-cli-service build。需要注意的是 Jenkins 在以前一直正常构建并部署,但是自从前端项目需要引入一个 26MB 的特殊 js 库之后,就出现了如上所述的情况,经过搜索,怀疑是 node 构建时对单文件大小有限制,所以使用了 limit 命令进行解除限制的处理。但是仍然没有任何效果。

由于 Jenkins 构建前端项目时没有任何有效的打印,所以请问 Jenkins 对于某个 jobs 是否可以有更详细的本地日志?

我该如何去排查这个前端项目的构建问题?

阅读 4.1k
2 个回答

Jenkins 构建本质是在执行构建命令,构建命令是有输出的,而 Jenkins 可以看到每次构建的控制台输出。

如果输出的信息不够明确,可以考虑在构建命令中添加输出详细信息的参数,比如某些命令可能知道 --verbose

另外,npm run build 理论上来说执行的是一个是有终结点的过程,而不是像 npm start 在某些时候会一直处于等待状态(如 Web 服务),所以一直 loading 是不正常的现象,最有可能的事情是网络阻碍,比如在 npm install 的时候部分资源下载不下来,一直卡在那(手工 npm install 有时候也会出现这种现象)。

具体是什么问题还是尽量要从控制台输出去分析原因,前期瞎猜一阵可以,但多猜无益。

新手上路,请多包涵

你好
这个问题你解决了吗

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题