Wie man Node.js-Versionen unter Linux mit NVM wechselt (Schritt-für-Schritt-Anleitung)

Die Verwaltung verschiedener Node.js-Versionen kann unübersichtlich werden, besonders wenn Sie an mehreren Projekten arbeiten, die jeweils ihre eigene Node.js-Konfiguration benötigen. Node Version Manager (NVM) macht das Wechseln zwischen Node.js-Versionen unter Linux einfach und übersichtlich. In dieser Anleitung erfahren Sie genau, wie Sie NVM installieren, Node-Versionen wechseln, Standardeinstellungen festlegen und häufige Probleme schnell lösen können.
Wichtige Erkenntnisse
- NVM hilft bei der Verwaltung mehrerer Node.js-Versionen ohne Konflikte.
- Führen Sie NVM- und Node.js-Befehle immer ohne
sudo
aus, um Berechtigungsprobleme zu vermeiden.
Schritt 1: Installieren Sie NVM unter Linux
Führen Sie diesen Befehl in Ihrem Terminal aus:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
Dieses Skript lädt NVM herunter und installiert es automatisch.
Installation überprüfen
Laden Sie Ihre Shell neu:
source ~/.bashrc # Für Bash-Benutzer
source ~/.zshrc # Für Zsh-Benutzer
Überprüfen Sie dann die NVM-Installation:
nvm --version
Sie sollten die Versionsnummer sehen.
Fehlerbehebung bei der Installation
Wenn Sie auf nvm: command not found
stoßen:
- Überprüfen Sie, ob Ihre
~/.bashrc
oder~/.zshrc
diese Zeilen enthält:
export NVM_DIR=""$HOME/.nvm""
[ -s ""$NVM_DIR/nvm.sh"" ] && . ""$NVM_DIR/nvm.sh""
- Nachdem Sie diese Zeilen hinzugefügt haben, laden Sie Ihre Shell erneut.
Schritt 2: Installation und Verwaltung von Node.js-Versionen
Installieren Sie die neueste Node.js-Version
Installieren Sie das neueste Node.js:
nvm install node # neueste Version
nvm install --lts # neueste Long Term Support (LTS) Version
Installieren Sie eine bestimmte Node.js-Version
Finden und installieren Sie eine bestimmte Node.js-Version (z.B. 20.11.0):
nvm ls-remote
nvm install 20.11.0
Liste der installierten Versionen
Überprüfen Sie die installierten Node-Versionen:
nvm ls
Schritt 3: Wechseln zwischen Node.js-Versionen
Wechseln Sie sofort zwischen Node.js-Versionen:
nvm use 20.11.0
Überprüfen Sie die aktive Version:
node -v
Setzen Sie eine Standard-Node.js-Version
Legen Sie die Standard-Node.js-Version für neue Terminals fest:
nvm alias default 20.11.0
Schritt 4: Verwendung von .nvmrc für projektspezifische Versionen
Erstellen Sie eine .nvmrc
-Datei in Ihrem Projektordner mit der Node-Version (z.B. 20.11.0
). Verwenden Sie dann:
nvm use
NVM wählt automatisch die Version aus der .nvmrc
-Datei.
Häufige Probleme und schnelle Lösungen
Node-Version ändert sich nicht
- Stellen Sie sicher, dass Sie nicht versehentlich eine systeminstallierte Node.js-Version verwenden.
- Führen Sie
which node
aus, um zu bestätigen, dass die NVM-verwaltete Node-Version aktiv ist. - Verwenden Sie niemals
sudo
für NVM-Befehle oder die Installation von npm-Paketen.
Fehlende globale npm-Pakete nach dem Versionswechsel
Jede Node.js-Version verwaltet ihre eigenen globalen npm-Pakete. Um globale Pakete zu migrieren:
nvm install 20 --reinstall-packages-from=18
Ersetzen Sie ""18"" durch die Node-Version, von der aus Sie migrieren möchten.
Aktualisierung von NVM
Führen Sie das Installationsskript erneut aus, um NVM nahtlos zu aktualisieren:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
Dies aktualisiert NVM, ohne die installierten Node-Versionen zu beeinträchtigen.
Fazit
Die Verwendung von NVM vereinfacht die Verwaltung mehrerer Node.js-Umgebungen erheblich. Es ermöglicht schnelles Wechseln, vermeidet Versionskonflikte und hält Ihren Linux-Entwicklungsworkflow reibungslos.
Häufig gestellte Fragen
Nein. NVM installiert Node.js-Versionen in Ihrem Home-Verzeichnis, daher sind keine Root-Berechtigungen (`sudo`) erforderlich und sollten nicht verwendet werden.
NVM funktioniert perfekt auf macOS. Windows-Benutzer sollten NVM für Windows verwenden, ein ähnliches, aber separates Tool.
Stellen Sie sicher, dass die NVM-Setup-Zeilen in Ihrem Shell-Profil (`~/.bashrc`, `~/.zshrc`) enthalten sind, laden Sie dann die Shell neu oder starten Sie Ihr Terminal neu.
Jede Terminal-Sitzung kann eine andere aktive Node.js-Version haben, die von NVM verwaltet wird, aber eine einzelne Sitzung kann nur eine Version gleichzeitig ausführen.