当前位置: 首页 > news >正文

Node.js 版本兼容问题:minimatch@10.0.3和minio@7.0.28 冲突的解决

 我们在构架项目时候,经常会遇到依赖包因当前 Node.js 环境不兼容的问题。比如像我当前的项目,是使用公司开发的框架的写的,要求install安装依赖包必须使用node18环境,然后run start使用node16环境运行。所以没办法,只能使用node18来install依赖包,但是这个minimatch在node18下不适配,安装失败。

error minimatch@10.0.3: The engine "node" is incompatible with this module.
Expected version "20 || >=22". Got "18.20.5"error minio@7.0.28: The engine "node" is incompatible with this module. 
Expected version ">8  <=18". Got "22.16.0"

最终果断选择降低minimatch@10.0.3的版本,降到了"minimatch": "9.0.5"。


package.json中的resolutions对象里面"resolutions": {"@terrestris/base-util": "1.0.1","@terrestris/ol-util": "10.2.0","@terrestris/react-geo": "22.4.0","commander": "12.0.0","minimatch": "9.0.5"},

yarn 就会强制所有依赖链中对 minimatch 的使用都是 9.0.5这个版本。

如果你使用的npm,需要你这么做:

npm install npm-force-resolutions --save-dev

然后,在 package.json 中添加一个预安装脚本和 resolutions 配置:

package.json文件"scripts": {"preinstall": "npx npm-force-resolutions"},"resolutions": {"minimatch": "9.0.5"}

如果 npm 大于 8.3 可以利用 overrides 直接指定依赖包应该使用的版本:

package.json文件"overrides": {"minimatch": "9.0.5"}

 想要看更详细的可以去看这个博主:解决 Node.js 版本不兼容问题:设置 resolutions 强制使用兼容版本的 minimatch。error minimatch@10.0.3: The engine “node“...._minimatch包作用-CSDN博客

http://www.dtcms.com/a/295333.html

相关文章:

  • Node.js 全局对象
  • Ubuntu-安装Asyn教程
  • 造成服务器内存不足的原因有什么
  • Node.js 中的内置模板path
  • Node.js特训专栏-实战进阶:18.密码加密与安全传输
  • node.js中的fs与path模块
  • 04.建造者模式的终极手册:从快餐定制到航天飞船的组装哲学
  • React+threejs两种3D多场景渲染方案
  • STM32 HAL库 HAL_TIM_OC_Stop函数详细解释
  • 期待更好的发展
  • 文件管理困境如何破?ZFile+cpolar打造随身云盘新体验
  • 亲测有效:EPLAN导出CAD图纸,DWG文件里的图纸复制粘贴出错和无法编辑的解决方法
  • EIDE 创建基于STM32-HD的项目快速创建流程
  • 精通Python PDF裁剪:从入门到专业的三重境界
  • 回调后门 函数
  • 微信格式插件 建的文件位置
  • 边缘智能体:轻量化部署与离线运行
  • MIT线性代数02_矩阵消元
  • C语言实现BIOS定义的WMI调用
  • NumPy 线性代数
  • 分布式推客系统开发全解:微服务拆分、佣金结算与风控设计
  • Sklearn 机器学习 数值标准化
  • 变量和函数底层工作原理
  • Mysql常用武功招式
  • 大脑各脑区功能解析:从痛觉处理到动作执行的协作机制
  • runc源码解读(一)——runc create
  • 技术赋能与体验升级:高端网站建设的核心要义
  • 【VSCode】复制到下一行快捷键
  • SparkSQL 子查询 IN/NOT IN 对 NULL 值的处理
  • 【分布式锁】什么是分布式锁?分布式锁的作用?