Probleme beim Installieren von Abhängigkeiten mit NPM npm install -d
in meinem Projektverzeichnis mit einer definierten package.json
Datei.
Hier ist meine package.json
: https://gist.github.com/3068312
Und nachdem ich den Knotenmodulordner ( rm -rf node_modules
) npm install -d
meines Projektstamms gelöscht habe, starte ich in meinem Projektstamm und werde mit folgendem begrüßt:
(ssh) /vagrant git:master ❯ npm install -d
npm info it worked if it ends with ok
npm info using [email protected]
npm info using [email protected]
npm info preinstall [email protected]
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 [email protected]
npm info into /vagrant [email protected]
npm info into /vagrant [email protected]
npm info into /vagrant [email protected]
npm info installOne [email protected]
npm info installOne [email protected]
npm info installOne [email protected]
npm info installOne [email protected]
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 [email protected]
npm info unbuild /vagrant/node_modules/underscore
npm ERR! error rolling back [email protected] 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 [email protected]
npm info unbuild /vagrant/node_modules/request
npm ERR! error rolling back [email protected] 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
Wenn ich es erneut ausführe npm install -d
, ändert sich der Fehler in das nächste Paket. Wenn ich es immer wieder ausführe , beschwert es sich schließlich nicht mehr und gibt Folgendes aus:
(ssh) /vagrant git:master ❯ npm install -d
npm info it worked if it ends with ok
npm info using [email protected]
npm info using [email protected]
npm info preinstall [email protected]
npm info build /vagrant
npm info linkStuff [email protected]
npm info install [email protected]
npm info postinstall [email protected]
npm info ok
Es wird jedoch keine der Abhängigkeiten für eines dieser Pakete installiert. Hat zum Beispiel cheerio
einige Abhängigkeiten. Wenn ich also versuche, meine Testsuite auszuführen, werde ich begrüßt mit:
(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)
Was gibt? Ich bin auf Ubuntu Precise64 in einer virtuellen Vagrant- Box.
Hast du es versucht
npm cache clean
?Ich hatte neulich verdammt viel Zeit damit, die Abhängigkeiten für Qunit zu installieren, und das lag daran, dass Phantonjs beim ersten Durchlauf nicht aufbauen konnten, aber als ich zur Neuinstallation ging, holte npm die Binärdateien nicht neu und versuchte es nur bauen aus den zwischengespeicherten. Nachdem der Cache geleert und erneut ausgeführt wurde, wurden
npm install
sie erneut abgerufen und erfolgreich erstellt.quelle