解决Jenkins在构建前端任务时报错error minimatch@10.0.3:……的记录

一,问题记录

在我搭建CICD流水线的过程中,当我在Jenkins上运行构建前端任务时,遇到了如下报错。

复制代码
[3/5] Fetching packages...
error minimatch@10.0.3: The engine "node" is incompatible with this module. Expected version "20 || >=22". Got "16.20.2"
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
Build step 'Execute shell' marked build as failure
Finished: FAILURE

二,解决过程

询问AI后,得知是现在系统环境的nodejs版本太低了,无法满足这个minimatch依赖包的要求。

于是我便在Jenkins的服务器上重新安装nodejs 20.10.0,但是又出现了新的报错

网上寻找答案后,大概意思就是:

GLIBC:是 Linux 系统的 "底层标准库",所有程序(包括 Node.js)都需要依赖它才能运行。

但是我的系统是centos7,默认的 GLIBC 版本是 2.17,而Node.js 20.x 需要更高版本的 GLIBC(如 2.25/2.27/2.28)

所以使用nodejs 20以上的版本对于我这个系统是走不通的了。

之后我又试着安装了nodejs 16 版本,但是在rebuild之后,报错依然是需要nodejs 20以上的版本。

后来又看到一篇文章,讲的挺不错的,遇到的报错与我的似乎一致,说可以降低项目所需要的minimatch的版本来达到不需要更新nodejs的版本也可以解决这个报错的方法。

文章链接如下:

https://huangfuyk.blog.csdn.net/article/details/149329894?fromshare=blogdetail&sharetype=blogdetail&sharerId=149329894&sharerefer=PC&sharesource=m0_74197017&sharefrom=from_link

于是我便更新了项目的代码,强制项目使用minimatch的9.0.0的版本,再次构建后,报错便没有再次出现了。

三,总结

在遇到这个问题时可以有以下的解决方法:

1,条件允许的情况下,可以更新nodejs的版本

2,使用resolutions字段强制锁定子依赖版本

相关推荐
Highcharts.js7 分钟前
可视化商用图表库对比,如何选择?
前端·javascript·学习·信息可视化·highcharts·前端可视化
weixin_403810138 分钟前
EasyClick iOS 免越狱自动化脚本怎么写:从环境判断到跑通第一个脚本
运维·ios·自动化
程序猿老A20 分钟前
GPU云服务器怎么安装AI
运维·服务器·人工智能
小白的码BUG之路21 分钟前
Docker -- No space left on device
运维·docker·容器
Ruiery29 分钟前
Linux 6.6内核 CPU 深度解析(八):percpu 变量 — 每个 CPU 一份数据,无锁访问
linux·运维·服务器
TheITSea1 小时前
JavaScript Web APIs
开发语言·前端·javascript
事圆则缓1 小时前
Android 使用 Jenkins 实现 CI/CD,并用 SonarQube 建立质量门禁
android·ci/cd·jenkins
恋猫de小郭1 小时前
Android CLI 支持 AI Agent 通过 Device Streaming 调试云真机
android·前端·flutter
Wang's Blog1 小时前
Java 项目实战: 外卖平台优化-前端dist部署与Nginx反向代理rewrite
java·前端·nginx
程序猿老A1 小时前
云服务器怎么配置视频存储?
运维·服务器·音视频