解决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字段强制锁定子依赖版本

相关推荐
逆风的蚂蚁7 小时前
linux服务器性能调整怎么落地?我把 CPU 调度、I/O 优先级和内核参数这几个旋钮都拧了一遍
linux·运维·服务器
北岛贰7 小时前
啵啵音乐迎来全新升级!
前端
mennekes8 小时前
临时用电线路标识:插头颜色、钟面标识配套规范
运维·网络·科技·安全·制造
hkNaruto9 小时前
【AI】基于大模型的AI游戏地图生成、控制方案:AI Native Game Harness 迁移操作手册
前端·人工智能·游戏
IT_陈寒9 小时前
Java序列化踩坑记:对象循环引用让我加班两小时
前端·人工智能·后端
程序猿老A9 小时前
轻量云服务器总是卡,内存占比高?
运维·服务器
Acro10 小时前
快给macOS 上的Grok Bot换一套皮肤
前端
flash俊杰10 小时前
双引擎 OCR 编排:逐页判定、视觉优先、partial 语义与三层超时
前端
计算机魔术师10 小时前
Reddit 每周被 Google 偷走 100 万次点击,CEO 摊牌了
前端
前端繁华如梦10 小时前
用 React Three Fiber 做一栋能编辑的教学楼数字孪生
前端