it-swarm.com.de

Homebrew installiert nvm, kann aber danach nicht gefunden werden?

Ich verwende homebrew und oh-my-zsh bei einer neuen Installation von OSX 10.10.1. Ich habe nvm über homebrew bekommen und dann versucht, es auszuführen, aber sagt - zsh: Befehl nicht gefunden: nvm

Irgendeine Idee was das Problem ist? Ich konnte git einfach installieren und verwenden ...

enter image description here

enter image description here

46
Dayan

Haben Sie die Anweisungen in den Vorbehalten befolgt? 

[~] brew info nvm
nvm: stable 0.20.0, HEAD
https://github.com/creationix/nvm
Not installed
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/nvm.rb
==> Caveats
Add the following to $HOME/.bashrc, $HOME/.zshrc, or your Shell's
equivalent configuration file:

  source $(brew --prefix nvm)/nvm.sh

Node installs will be lost upon upgrading nvm. Add the following above
the source line to move install location and prevent this:

  export NVM_DIR=~/.nvm

Ohne die zusätzliche Konfiguration sieht es nicht so aus, als würde es NVM standardmäßig finden. 

75
Doon

Es gibt ZWEI Dinge, die Sie tun müssen. Befolgen Sie die nach der Installation von nvm via Brew angezeigten Vorbehalte. DANN müssen Sie die Änderungen von .bash_profile aktivieren/neu laden.

  1. brew install nvm ausführen
  2. Folgen Sie den in der Konsole angezeigten Vorbehalten. Meine waren wie folgt.

Fügen Sie ~/.bash_profile oder Ihre gewünschte Shell ein Konfigurationsdatei:

export NVM_DIR="$HOME/.nvm"
. "$(brew --prefix nvm)/nvm.sh"
  1. Führen Sie . ~/.bash_profile aus, um die von Ihnen vorgenommenen Änderungen in Ihre .bash_profile-Datei zu übernehmen
26
redfox05

Ich habe ein paar Stunden damit verbracht, mich mit diesem Thema auseinanderzusetzen, bin aber zu dem Schluss gekommen, dass DarkPurple141 richtig ist: nvm ist einfach nicht mit Homebrew kompatibel, wie sie auf ihrem Github angeben nvm- sh/nvm Node Version Manager . Homebrew wird nvm installieren und alles sieht gut aus, bis man versucht, npm zu bekommen, um ein Modul zu installieren, in meinem Fall Mocha. Das warf mich gleich wieder auf den gefürchteten Irrtum:

ERR! Fehler: EACCES: Berechtigung verweigert, Zugriff auf '/ usr/local/lib/node_modules'

Die Lösung unter MacOS 10.14 Mojave war:

  1. $ _brew uninstall nvm_
  2. $ _brew cleanup_ (nur aus gutem Grund)
  3. $ _curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash_
  4. Überprüfen Sie, ob nvm korrekt installiert wurde, indem Sie $ _command -v nvm_ ausführen.

    4.a Wenn die Antwort nicht $ nvm ist, fügen Sie der Datei ~/.bash-profile die folgenden zwei Zeilen hinzu: _export NVM_DIR=~/.nvm_ _source ~/.nvm/nvm.sh_ 4.b Starten Sie Ihren Computer neu (Sie) kann versuchen, Terminal zu schließen und es zuerst neu zu starten) 4.c ​​$ _command -v nvm should now return_ nvm`

  5. Aktualisiere nun Node.js mit $ _nvm install --lts_

  6. Update npm: $ _nvm install-latest-npm_
  7. $ _npm install --global mocha_. Endlich Erfolg! Nun, für mich und ich hoffe auch für dich.
1
Elise van Looij

Obwohl die akzeptierte Antwort technisch funktioniert, ist zu beachten, dass die Installation von Homebrew nicht offiziell vom nvm-Paket unterstützt wird. Um Probleme wie die oben genannten zu vermeiden, sollten Sie eine der folgenden Installationsmethoden anwenden.

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash

# or wget:
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash

quelle: https://github.com/creationix/nvm

0
DarkPurple141

Um nvm zu installieren, brew install nvm

Um nvm nach der Installation oder nur einmal auszuführen, $(brew --prefix nvm)/nvm.sh

Um nvm jedes Mal auszuführen, wird zsh geöffnet

  1. nano ~/.zshrc
  2. Diese Zeile hinzufügen source $(brew --prefix nvm)/nvm.sh
0
Ricky Dam

Möglicherweise müssen Sie Ihre bash-Profile oder andere bash-Dateien erneut laden, weil der Befehl nvm möglicherweise kein Programm ist, sondern eine Funktion, die definiert ist und nur verwendet werden kann, wenn die entsprechende bash-Datei als Quelle verwendet wird.

Auf einem System, das ich überprüft habe

which nvm 

klappt aber nicht 

nvm list

tut. Das bedeutet, dass Sie das Wort "nvm" verwenden können, um etwas aufzurufen. Dieses Etwas ist kein Programm. Im aktuellen Fall ist dies eine Funktion, die mit verifiziert werden kann

typeset -F | grep -P ' nvm$'

welche Ausgänge

declare -F nvm

was bedeutet, dass nvm eine Funktion ist, deren Körper durch Tun überprüft werden kann

type -F nvm
0
Saurabh Hirani

Wenn brew verwendet wurde, besteht die Möglichkeit, dass die nvm nicht verbunden ist, insbesondere wenn sie von einem anderen MAC OS-Benutzer installiert wurde.

In diesem Fall führen Sie Folgendes aus:

brew link nvm
0