NPM installiert keine Abhängigkeiten?

8

Probleme beim Installieren von Abhängigkeiten mit NPM npm install -din meinem Projektverzeichnis mit einer definierten package.jsonDatei.

Hier ist meine package.json: https://gist.github.com/3068312

Und nachdem ich den Knotenmodulordner ( rm -rf node_modules) npm install -dmeines 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 cheerioeinige 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.

neezer
quelle

Antworten:

1

Vielleicht stimmt etwas nicht mit symlink on vagrant und diesem Problem: https://github.com/isaacs/npm/issues/2380

Versuchen

npm install --no-bin-link

auch hier erklärt: http://www.conroyp.com/2013/04/13/symlink-shenanigans-nodejs-npm-express-vagrant/

RegisM
quelle
Beim Ausprobieren von Docker Tutorial prakhar.me/docker-curriculum/#dockerrun wird beim Ausführen von root @ ip-172-31-22-20 derselbe Fehler angezeigt: ~ / docker-curriculum # docker build -t ashishkarpe / foodtrucks-web.
Ashish Karpe
0

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 installsie erneut abgerufen und erfolgreich erstellt.

Dan Schmidt
quelle