npm安装失败,因为在registry中缺less包

我在使用节点和早午餐的项目中遇到问题。 这个问题是目前特定于早午餐,但任何模块可能会发生我的猜测。

当前重现这个最简单的方法是在一个新文件夹中执行以下操作:

npm init npm install --save-dev brunch 

这里的问题是,早午餐取决于loggy,而loggy又取决于ansi-color,在npmregistry中不再有条目:

https://registry.npmjs.org/ansi-color

我想这可能是github项目: https : //github.com/loopj/commonjs-ansi-color

无论如何,我无法继续,我们所有的构build失败,因为他们无法获取给定的依赖。

我可以以某种方式使用npm shrinkwrap,但这取决于node_modules中现有的模块,目前我缺less这些模块。

那么我怎么能强制npm从不同的位置使用ansi-color,或者忽略依赖关系呢?

不知道关于npm 2,但你可以用beta npm 3来解决这个问题.npm 3具有扁平的node_modules目录。 所以子模块可以坐在顶层。 阅读更新日志 。

缺less的模块可以直接从他们的Github仓库安装,作为项目的顶层依赖。 如果npm在node_modules目录中find具有相同版本的模块,则不会在registry中查找该模块。

安装npm 3:

 npm install -g npm@3-latest 

然后安装依赖关系:

 //install missing module from other location npm install https://github.com/loopj/commonjs-ansi-color.git --save-dev npm install --save-dev brunch 

它看起来像ansi颜色回到npmregistry(“ https://registry.npmjs.org/ansi-color ”重新在线)