安装(私有)依赖时,我遇到了一些意想不到的行为。
为了问题,我们假设我有两个包:
{
"name": "Package_A",
....
"dependencies": {
"grunt": "~0.4.2",
"Package_B": ""
}
}
和
{
"name": "Package_B",
"scripts": {
"install": "grunt"
},
....
"dependencies": {
"grunt": "~0.4.2",
"grunt-contrib-clean": "~0.5.0"
}
}
现在,当我在(一个新的)Package_A上运行npm install时,Package_B以grunt-contrib-clean
作为依赖项安装并运行grunt(使用clean)。一切正常。
现在,只要我将grunt-contrib-clean
添加到Package_A依赖项并运行install(再次刷新副本)就失败了。
npm安装脚本运行grunt,grunt找不到grunt-contrib-clean
:
找不到本地Npm模块“grunt-contrib-clean”。它安装了吗?
我不确定从哪里开始。我想知道我是否有类似NPM doesn't install module dependencies的问题。但我对npm或grunt的了解还不够。
答案 0 :(得分:0)
知道了!
将脚本从安装更改为预先发布工作
"scripts": {
"prepublish": "grunt package"
},
安装时必须与操作顺序有关。古怪。
(更新)
从git repo(Npm doesn't run prepublish)安装时