【发布时间】:2021-02-12 18:20:13
【问题描述】:
我正在使用package.json 的脚本部分来强制解决:
"preinstall": "npx npm-force-resolutions"
在分辨率部分,我输入了带有指定版本的graceful-fs:
"resolutions": {
"graceful-fs": "^4.2.4",
},
当我运行npm i 时,一切都正确安装,设置的版本被考虑在内。但后来当我安装一个额外的模块时,例如npm i random-package,我的设置版本被丢弃了,我最终得到了graceful-fs@1.2.3 和某些依赖项中的其他低版本。
如果我清除 node_modules 文件夹并再次运行 npm i,一切都会再次正常。
我也尝试将分辨率设置得更具体,比如
"resolutions": {
"glob/**/graceful-fs": "^4.2.4",
},
但这无济于事。
我也试过了:
- 将模块添加为依赖项、devDependency 或 peerDependency
- 使用收缩包装并在那里覆盖它
但没有运气。
我错过了什么?
【问题讨论】:
-
嘿,你有没有机会找到解决方案?我遇到了同样的问题
-
我认为没有其他方法可以解决这个问题,除非您远离依赖它的那些包或这些包得到更新。
-
我没有答案,但我可以为您节省一些时间。什么对我有用 - 安装软件包后我不必清除 node_modules 文件夹。我所要做的就是在之后输入
npm i,它会进行修复。仍然很烦人,但至少您不必先清除整个文件夹。
标签: node.js npm dependencies npm-install npm-scripts