本文介绍了为什么NPM 7.17不安装我的对等依赖项的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个main
项目,它依赖于本地文件存储中的包package1
。package1
对等方依赖Express:{
"name": "package1",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo "Error: no test specified" && exit 1"
},
"author": "",
"license": "ISC",
"peerDependencies": {
"express": "^4.17.1"
}
}
在我做的主项目文件夹中
npm install ../packages/package1
使用[email protected]时,如预期的那样,它将Package1作为链接安装在主项目的node_MODULES中。它还警告我缺少对等依赖项--不出所料。
现在我使用[email protected]来执行相同的任务。带--legacy-peer-deps
选项或不带选项。它将Package1作为链接安装在主项目的node_MODULES中。但它不在主包中安装对等依赖项,也不向我发出缺少对等依赖项的警告。
-legacy-peer_deps
打开的情况下)或express
。顺便说一句,它也不会安装在Package1的node_MODULES中。有人知道吗?我将不胜感激。
推荐答案
我也遇到了同样的情况,根据这条评论https://stackoverflow.com/a/57915074/473967看起来peerDependencies
是针对主机程序包的,但不会安装在";plugin";程序包上,所以我们需要在依赖项(或DevDependency)和peerDependency上添加两次,以便让主机知道。
这篇关于为什么NPM 7.17不安装我的对等依赖项的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!