NPM不安装依赖关系?

遇到麻烦让NPM安装与npm install -d在我的项目目录与定义的package.json文件的依赖关系。

这是我的package.json : https : //gist.github.com/3068312

rm -rf node_modules我的项目根节点模块文件夹( rm -rf node_modules )后,我在项目根目录下运行npm install -d

 (ssh) /vagrant git:master ❯ npm install -d npm info it worked if it ends with ok npm info using npm@1.1.4 npm info using node@v0.6.12 npm info preinstall redeye@0.0.1 npm http GET https://registry.npmjs.org/sinon npm http GET https://registry.npmjs.org/underscore npm http GET https://registry.npmjs.org/mocha npm http GET https://registry.npmjs.org/request npm http 304 https://registry.npmjs.org/sinon npm http 304 https://registry.npmjs.org/underscore npm http 304 https://registry.npmjs.org/mocha npm http 304 https://registry.npmjs.org/request npm info into /vagrant underscore@1.3.3 npm info into /vagrant mocha@1.3.0 npm info into /vagrant sinon@1.3.4 npm info into /vagrant request@2.9.203 npm info installOne underscore@1.3.3 npm info installOne mocha@1.3.0 npm info installOne sinon@1.3.4 npm info installOne request@2.9.203 npm info unbuild /vagrant/node_modules/underscore npm info unbuild /vagrant/node_modules/mocha npm info unbuild /vagrant/node_modules/sinon npm info unbuild /vagrant/node_modules/request npm ERR! error installing underscore@1.3.3 npm info unbuild /vagrant/node_modules/underscore npm ERR! error rolling back underscore@1.3.3 Error: UNKNOWN, unknown error '/vagrant/node_modules/underscore' npm ERR! Error: ENOENT, no such file or directory '/vagrant/node_modules/underscore/package.json' npm ERR! You may report this log at: npm ERR! <http://bugs.debian.org/npm> npm ERR! or use npm ERR! reportbug --attach /vagrant/npm-debug.log npm npm ERR! npm ERR! System Linux 3.2.0-23-generic npm ERR! command "node" "/usr/bin/npm" "install" "-d" npm ERR! cwd /vagrant npm ERR! node -v v0.6.12 npm ERR! npm -v 1.1.4 npm ERR! path /vagrant/node_modules/underscore/package.json npm ERR! code ENOENT npm ERR! message ENOENT, no such file or directory '/vagrant/node_modules/underscore/package.json' npm ERR! errno {} npm ERR! error installing request@2.9.203 npm info unbuild /vagrant/node_modules/request npm ERR! error rolling back request@2.9.203 Error: UNKNOWN, unknown error '/vagrant/node_modules/request' npm ERR! npm ERR! Additional logging details can be found in: npm ERR! /vagrant/npm-debug.log npm not ok 

如果我重新运行npm install -d ,那么错误会变成下一个软件包…如果我一直运行它,它最终不会再抱怨,并输出:

 (ssh) /vagrant git:master ❯ npm install -d npm info it worked if it ends with ok npm info using npm@1.1.4 npm info using node@v0.6.12 npm info preinstall redeye@0.0.1 npm info build /vagrant npm info linkStuff redeye@0.0.1 npm info install redeye@0.0.1 npm info postinstall redeye@0.0.1 npm info ok 

但是,没有安装任何这些软件包的依赖关系。 例如, cheerio有一些依赖,所以当我尝试运行我的testing套件,我迎接:

 (ssh) /vagrant git:master ❯ mocha --compilers coffee:coffee-script --watch spec/* node.js:201 throw e; // process.nextTick error, or 'error' event on first tick ^ Error: Cannot find module 'cheerio-select' at Function._resolveFilename (module.js:332:11) at Function._load (module.js:279:25) at Module.require (module.js:354:17) 

是什么赋予了? 我在一个Vagrant虚拟框中的Ubuntu Precise64上。

也许有什么不对的关于stream浪和这个问题的符号链接: https : //github.com/isaacs/npm/issues/2380

尝试

 npm install --no-bin-link 

也在这里解释: http : //www.conroyp.com/2013/04/13/symlink-shenanigans-nodejs-npm-express-vagrant/

你有没有尝试npm cache clean

我有一段时间试图安装Qunit依赖关系的前一天,这是由于phantonjs没有build立在第一次运行,但是当我去重新安装,npm没有重新打开二进制文件,只是试图从caching的构build。 在清空caching并重新运行npm install ,重新设置它们并成功构build。