2016-09-23 1 views
1

Ich habe gestern eine Neuinstallation von macOS Sierra gemacht, als ich versucht habe, ng CLI zu installieren, habe ich diesen Fehler bekommen.Nicht in der Lage, ng CLI auf macOS Sierra zu installieren

Error: EACCES: permission denied, rmdir '/usr/local/lib/node_modules/.staging' 

Ich habe versucht, sudo uninstall, npm clean cache und neu zu installieren, aber ohne Glück zu tun. Wie kann ich dieses Problem lösen?

Antwort

2

konnte ich den Fehler beheben, indem option 2 in the NPM documentation mit:

Option 2: Ändern npm Standardverzeichnis in ein anderes Verzeichnis

Es gibt Zeiten, wenn Sie Eigentum an der nicht ändern wollen Standardverzeichnis, das npm verwendet (dh /usr), da dies einige Probleme verursachen könnte, zum Beispiel, wenn Sie das System mit anderen Benutzern teilen.

Stattdessen können Sie npm so konfigurieren, dass ein anderes Verzeichnis insgesamt verwendet wird. In unserem Fall wird dies ein verstecktes Verzeichnis in unserem Home Ordner sein.

  1. ein Verzeichnis für globale Installationen Marke:

    mkdir ~/.npm-global 
    
  2. konfigurieren npm den neuen Verzeichnispfad zu verwenden:

    npm config set prefix '~/.npm-global' 
    
  3. öffnen oder ~/.profile-Datei erstellen und diese Zeile hinzu:

    export PATH=~/.npm-global/bin:$PATH 
    
  4. Zurück auf der Kommandozeile, aktualisieren Sie die Systemvariablen:

    source ~/.profile` 
    

Test: ohne sudo ein Paket global zum Download.

npm install -g jshint 

Statt Schritte 2-4 können Sie auch die entsprechenden ENV Variable (z, wenn Sie nicht wollen, ~/.profile ändern):

NPM_CONFIG_PREFIX=~/.npm-global