2014-05-09 3 views
5

Basisdaten:Installieren von Paketen mit NPM führt zu einer Abhängigkeitsschleife

System: OS X 10.9.2 
Npm version: 1.4.9 
Node version: v0.10.28 
Ruby Version : ruby ​2.1.1p76 (2/24/2014 Revision 45161) [ x86_64- darwin12.0 ] 

Was passiert, ist, dass, wenn ich laufe den npm install -g bower oder sudo nom install -g Befehl oder Bower wird eine Schleife mit Fehlern, aber unvollendet, führt Rollback und erneut starten (Ich vermute).

geschieht auch eingestellt werden, andere Abhängigkeiten zum Download wie karma, mocha, chai (ich weiß nicht, ob Abhängigkeiten von bower sein wird), aber das Problem ist nicht nur das, aber es passiert zu versuchen, alle Abhängigkeiten Prüfung zu installieren : yeoman, grunt, etc ...

ich die folgenden Befehle versucht haben, aber das Problem weiterhin besteht:

npm cache clean 
npm cache clear 

Dies ist ein Teil - debug.log npm Datei:

32016 verbose etag " 9CS1TTNJ9VSLF7WEYXSRZ8EMQ " 
32017 http GET https://registry.npmjs.org/grunt-contrib-jshint 
32018 gunzTarPerm extractEntry silly example/test/test- example.js 
32019 gunzTarPerm extractEntry silly lib/main.js 
32020 gunzTarPerm extractEntry silly lib/tap -browser- harness.js 
32021 gunzTarPerm extractEntry silly lib/tap- consumer.js 
32022 gunzTarPerm extractEntry silly lib/tap -cov - html.js 
32023 gunzTarPerm extractEntry silly lib/tap- assert.js 
32024 gunzTarPerm extractEntry silly lib/tap- harness.js 
32025 gunzTarPerm extractEntry silly lib/tap- producer.js 
32026 gunzTarPerm extractEntry silly lib/tap- results.js 
32027 gunzTarPerm extractEntry silly lib/tap- runner.js 
32028 gunzTarPerm extractEntry silly lib/tap- test.js 
32029 gunzTarPerm extractEntry silly lib/tap -global- harness.js 
32030 gunzTarPerm silly extractEntry AUTHORS 
32031 gunzTarPerm silly extractEntry coverage-example/lib/bar.js 
32032 gunzTarPerm silly extractEntry coverage-example/lib/foo.js 
32033 gunzTarPerm silly extractEntry coverage-example/test/bar.test.js 
32034 gunzTarPerm silly extractEntry coverage-example/test/baz.test.js 
32035 gunzTarPerm silly extractEntry coverage-example/test/foo.test.js 
32036 gunzTarPerm silly extractEntry bin/tap- http.js 
32037 gunzTarPerm silly extractEntry bin/tap- reader.js 
32038 gunzTarPerm silly extractEntry bin/tap.js 
32039 gunzTarPerm extractEntry silly test/buffer_compare.js 
32040 gunzTarPerm extractEntry silly test/expose- gc- test.js 
32041 gunzTarPerm extractEntry silly test/independent- timeouts.js 
32042 gunzTarPerm extractEntry silly test/isolated- conf- test.js 
32043 gunzTarPerm extractEntry silly test/meta- test.js 
32044 gunzTarPerm extractEntry silly test/timeout.js 
32045 gunzTarPerm extractEntry silly test/common.js 
32046 gunzTarPerm extractEntry silly test/test- test.js 
32047 gunzTarPerm extractEntry silly test/output- childtest - description.js 
32048 gunzTarPerm extractEntry silly test/result - trap.js 
32049 gunzTarPerm extractEntry silly test/segv.js 
32050 extractEntry test gunzTarPerm silly/trivial - success.js 
32051 gunzTarPerm extractEntry silly test/single - test- harness- with- plan.js 
32052 gunzTarPerm extractEntry silly test/deep.js 
32053 gunzTarPerm extractEntry silly test/single - harness- test.js 
32054 gunzTarPerm extractEntry silly test/nested- test.js 
32055 gunzTarPerm extractEntry silly test/undefined_indented.js 
32056 gunzTarPerm extractEntry silly test/non -tap- output.js 
32057 gunzTarPerm extractEntry silly test/not- executed.sh 
32058 gunzTarPerm extractEntry silly test/executed.sh 
32059 gunzTarPerm extractEntry silly test/end -exception/t.js 
32060 gunzTarPerm silly extractEntry test-disabled/bailout.js 
32061 gunzTarPerm silly extractEntry test-disabled/foo.js 
32062 gunzTarPerm silly extractEntry test-disabled/t.js 
32063 gunzTarPerm silly extractEntry node_modules/inherits/package.json 
32064 gunzTarPerm silly extractEntry node_modules/inherits/README.md 
32065 gunzTarPerm silly extractEntry node_modules/inherits/LICENSE 
32066 gunzTarPerm silly extractEntry node_modules/inherits/inherits - old.js 
32067 gunzTarPerm silly extractEntry node_modules/inherits/inherits.js 
32068 gunzTarPerm silly extractEntry node_modules/yamlish/package.json 
32069 gunzTarPerm silly extractEntry node_modules/yamlish/README.md 
32070 gunzTarPerm silly extractEntry node_modules/yamlish/LICENSE 
32071 gunzTarPerm silly extractEntry node_modules/yamlish/yamlish.js 
32072 gunzTarPerm extractEntry silly . Travis.yml 
32073 gunzTarPerm silly extractEntry History.md 
32074 gunzTarPerm extractEntry silly example/defined.js 
32075 gunzTarPerm modified silly mode [ ' example/defined.js ' , 438, 420] 
32076 gunzTarPerm silly extractEntry readme.markdown 
32077 gunzTarPerm modified silly mode [ ' readme.markdown ' , 438, 420] 
Http 32078 200 https://registry.npmjs.org/should/-/should-1.2.2.tgz 
304 32079 http https://registry.npmjs.org/tape 
32080 registry.get silly cb [ 304, 
32080 silly registry.get {date : ' Fri, 09 May 2014 1:25:21 GMT ' 
32080 silly registry.get server: ' Apache ' 
32080 registry.get silly via: '1 .1 varnish ' 
32080 registry.get silly ' last-modified ': ' Fri, 09 May 2014 1:25:21 GMT ' 
32080 registry.get silly ' cache-control ' : 'max -age = 1', 
32080 registry.get silly etag ' " NOJCHGNZ4V3LSB5NIN9NV95R '" 
32080 registry.get silly ' x -served -by ' , ' cache- am69 -AMS ' 
32080 registry.get silly ' x -cache' , ' HIT ' , 
32080 registry.get silly ' x -cache- hits' : '1' 
32080 registry.get silly 'x- timer' , ' S1399598721.296903610 , VS0 , VE186 ' 
32080 registry.get silly vary : 'Accept' , 
32080 registry.get silly 'content - length' : '0 ' , 
32080 registry.get silly ' keep- alive' , ' timeout = 10 , max = 50', 
32080 registry.get silly connection : ' Keep- Alive '} ] 
32081 verbose etag cache from tape 
257f9ab3 silly lockfile - 32082 -2- lodash 4-1 lodash @ ~ 2.4.1 
257f9ab3 silly lockfile - 32083 -2- lodash 4-1 lodash @ ~ 2.4.1 
32084 gunzTarPerm extractEntry silly example/prof.js 
32085 gunzTarPerm extractEntry silly example/top/
32086 gunzTarPerm extractEntry silly example/top/run.js 
32087 gunzTarPerm extractEntry silly test/_files/inverted_section.js 

Und das sind einige der Fehler, die mich in den Prozess verlassen alle Abhängigkeiten installieren:

npm ERR ! Error: ENOENT , open '/usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/grunt-contrib-watch/node_modules/grunt-contrib-internal/CONTRIBUTING.md' 
npm ERR ! If you need help , you report this May * Entire * log , 
npm ERR ! including the npm and node versions , at: 
npm ERR ! <http://github.com/npm/npm/issues> 

npm ERR ! Darwin 13.1.0 System 
npm ERR ! command " node" "/usr/local/bin/npm " "install" "-g " " bower " 
npm ERR ! cwd/Users/joseapl/Sites 
npm ERR ! node- v v0.10.28 
npm ERR ! npm - v 1.4.9 
npm ERR ! path /usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/grunt-contrib-watch/node_modules/grunt-contrib-internal/CONTRIBUTING.md 
npm ERR ! code ENOENT 
npm ERR ! errno 34 
npm ERR ! Error: ENOENT , lstat '/usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/grunt-contrib-watch/node_modules/grunt-contrib-nodeunit/Gruntfile.js' 
npm ERR ! If you need help , you report this May * Entire * log , 
npm ERR ! including the npm and node versions , at: 
npm ERR ! <http://github.com/npm/npm/issues> 

npm ERR ! Darwin 13.1.0 System 
npm ERR ! command " node" "/usr/local/bin/npm " "install" "-g " " bower " 
npm ERR ! cwd/Users/joseapl/Sites 
npm ERR ! node- v v0.10.28 
npm ERR ! npm - v 1.4.9 
npm ERR ! path /usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/grunt-contrib-watch/node_modules/grunt-contrib-nodeunit/Gruntfile.js 
npm ERR ! fstream_path /usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/grunt-contrib-watch/node_modules/grunt-contrib-nodeunit/Gruntfile.js 
npm ERR ! File fstream_type 
npm ERR ! FileWriter fstream_class 
npm ERR ! code ENOENT 
npm ERR ! errno 34 
npm ERR ! fstream_stack/usr/local/lib/node_modules/npm/node_modules/fstream/lib/writer.js : 284:26 
npm ERR ! fstream_stack Object.oncomplete (fs.js : 107:15) 
npm ERR ! Error: ENOENT , lstat '/usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/istanbul/test/instrumentation/test-for.js' 
npm ERR ! If you need help , you report this May * Entire * log , 
npm ERR ! including the npm and node versions , at: 
npm ERR ! <http://github.com/npm/npm/issues> 

npm ERR ! Darwin 13.1.0 System 
npm ERR ! command " node" "/usr/local/bin/npm " "install" "-g " " bower " 
npm ERR ! cwd/Users/joseapl/Sites 
npm ERR ! node- v v0.10.28 
npm ERR ! npm - v 1.4.9 
npm ERR ! path /usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/istanbul/test/instrumentation/test-for.js 
npm ERR ! fstream_path /usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/istanbul/test/instrumentation/test-for.js 
npm ERR ! File fstream_type 
npm ERR ! FileWriter fstream_class 
npm ERR ! code ENOENT 
npm ERR ! errno 34 
npm ERR ! fstream_stack/usr/local/lib/node_modules/npm/node_modules/fstream/lib/writer.js : 284:26 
npm ERR ! fstream_stack Object.oncomplete (fs.js : 107:15) 
npm ERR ! Error: ENOENT , lstat '/usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/grunt-contrib-watch/node_modules/grunt-contrib-jshint/tasks/jshint.js' 
npm ERR ! If you need help , you report this May * Entire * log , 
npm ERR ! including the npm and node versions , at: 
npm ERR ! <http://github.com/npm/npm/issues> 

npm ERR ! Darwin 13.1.0 System 
npm ERR ! command " node" "/usr/local/bin/npm " "install" "-g " " bower " 
npm ERR ! cwd/Users/joseapl/Sites 
npm ERR ! node- v v0.10.28 
npm ERR ! npm - v 1.4.9 
npm ERR ! path /usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/grunt-contrib-watch/node_modules/grunt-contrib-jshint/tasks/jshint.js 
npm ERR ! fstream_path /usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/grunt-contrib-watch/node_modules/grunt-contrib-jshint/tasks/jshint.js 
npm ERR ! File fstream_type 
npm ERR ! FileWriter fstream_class 
npm ERR ! code ENOENT 
npm ERR ! errno 34 
npm ERR ! fstream_stack/usr/local/lib/node_modules/npm/node_modules/fstream/lib/writer.js : 284:26 
npm ERR ! fstream_stack Object.oncomplete (fs.js : 107:15) 
npm http GET https://registry.npmjs.org/mocha/-/mocha-1.8.0.tgz 
npm ERR ! Error rolling back Error: ENOTEMPTY , rmdir '/usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/grunt-contrib-watch/node_modules/tiny-lr' 
npm ERR ! Error rolling back [email protected] { [Error : ENOTEMPTY , rmdir '/usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/grunt-contrib-watch/node_modules/tiny-lr'] 
npm ERR ! Error rolling back errno : 53, 
npm ERR ! rolling back the error code: ' ENOTEMPTY ' 
npm ERR ! Error rolling back path: '/usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/grunt-contrib-watch/node_modules/tiny-lr' } 
npm ERR ! Error: ENOENT , lstat '/usr/local/lib/node_modules/bower/node_modules/decompress-zip/node_modules/grunt-contrib-watch/node_modules/gaze/test/add_test.js' 
npm ERR ! If you need help , you report this May * Entire * log , 
npm ERR ! including the npm and node versions , at: 
npm ERR ! <http://github.com/npm/npm/issues> 

Enthält diese mit der Version von Xcode zu tun haben Version 5.1.1 (5B1008) und Kommandozeilen-Tools?

+0

Sie haben wahrscheinlich Knoten mit Homebrew und ohne Sudo, hast du? Selbst wenn nicht, warum benutzt du 'sudo' um auf'/usr/local' zu installieren? Ich würde das zuerst beheben: Gib '/ usr/local' korrekte Berechtigungen (zB' sudo chown -R dev: wheel/usr/local && sudo chmod -Ra + rwX, go-w/usr/local') und führe alles aus von unter 'su - dev' ohne sudo (hier betrachte ich, dass du eine Art 'dev' Konto für all die Entwicklungs - Sachen hast, die du nicht versehentlich als dich selbst töten willst). –

+0

erklärt, "Sudo" Ich habe es als eine verzweifelte Option verwendet, normalerweise ohne sudo, eine andere Sache zu betonen ist, dass npm gut funktionierte, bis ich meine Xcode aktualisieren – JoseAPL

+1

Ich habe Xcode Version 5.1.1 (5B1008) und seine Kommandozeilen-Tools und "npm install -g bower" ausführen, da der Benutzer, der frei nach/usr/local schreiben kann, keine Probleme verursacht, obwohl er tatsächlich die Hälfte des Universums als Abhängigkeiten nutzt. Sie erhalten die ganze Zeit "Pfad existiert nicht" Dateisystemfehler (ENOENT), so dass Berechtigungen wahrscheinlich ein Problem sein werden –

Antwort

1

Was passiert, ist, dass, wenn ich den npm install -g bower oder sudo nom install -g Befehl oder Bower laufen wird eine Schleife mit Fehlern, aber unvollendet, führt Rollback und neu starten (ich glaube).

Reading this und es scheint auf dem richtigen Weg zu sein. Also hast du versucht, es als normaler Benutzer auszuführen, richtig?

npm install -g bower 

und dann über sudo wie diese ausgeführt wird, richtig?

sudo npm install -g bower 

Was sudo su - wie dies über das Tun:

sudo su - 

Und dann laufen:

npm install -g bower 

Ein weiterer Vorschlag sicher ~/.npm -der Cache in Ihrem lokalen Benutzer zu machen, ist Verzeichnis-gesetzt zu Ihrem Benutzer rekursiv wie folgt:

sudo chown -R $USER ~/.npm 

Beachten Sie, dass die verknüpften Anweisungen den Befehl whoami verwenden, der effektiv mit $USER identisch ist. Dies ist die Bash-Umgebungsvariable, die mit dem übereinstimmt, wer Sie auf dem System sind.

Und obendrein, dass die oben links to another site gelinkten Seite, die sicher /usr/local machen empfiehlt auch ebenso wie diese rekursiv auf Ihre Benutzer festgelegt ist:

sudo chown -R $USER /usr/local 

Aber ich würde nur empfehlen, /usr/local Einstellung, wenn sonst nichts funktioniert. Das scheint ein bisschen radikal zu sein.

+0

ja, ich lese diese Beiträge [Link] (http: //www.daigo. org/2013/11/installation-npm-on-mavericks-macbook-pro /) und haben ihre Empfehlungen umgesetzt. aber es hat für mich nicht funktioniert, eine Abhängigkeit zu installieren ist, als ob Sie eine andere Abhängigkeit von package.json installieren würden. Ich weiß es nicht. aber das funktioniert nicht für mich – JoseAPL

+0

Es gibt keine radikale Einstellung vernünftige Berechtigungen für '/ usr/local' und nicht mit' sudo' überhaupt ... siehe meinen Kommentar zur ursprünglichen Frage –

+0

@OlegS. Dein Rat ist gut. Es ist zwar sinnvoll, Berechtigungen für '/ usr/local' zu vergeben, aber obwohl Ihre Anweisungen durchaus sinnvoll sind, erwäge ich, systemweite Berechtigungen für'/usr/local' auf den persönlichen Login eines Benutzers zu ändern, um eine völlige Fehlinterpretation dessen, was '/ usr/local ist 'bedeutet:" ... tertiäre Hierarchie für lokale Daten vom Systemadministrator installiert. "http://hivelogic.com/articles/using_usr_local/ – JakeGould

Verwandte Themen