Der NodeJS-Interpreter-Name(node
) auf Ubuntu wurde aufgrund eines Namenskonflikts mit einem anderen Paket in nodejs
umbenannt. Hier ist, was in der Readme-Datei von Debian steht:
Der ursprüngliche Name für den Node.js-Interpreter-Befehl lautet "node". In Debian wurde der Interpreter-Befehl in "nodejs" geändert.
Dies wurde durchgeführt, um Kollisionen mit Namensräumen zu verhindern: Andere Befehle verwenden im Ursprung denselben Namen, wie z.B. ax25-node aus dem Paket "node".
Skripte, die Node.js als Shell-Befehl aufrufen, müssen stattdessen den Befehl "nodejs" verwenden.
Die Verwendung von nodejs führt jedoch dazu, dass bei der Installation von Paketen mit npm
Fehler auftreten. Die Paketinstallation schlägt mit dem folgenden Fehler fehl:
sh: 1: node: not found npm WARN Dieses Problem könnte auf die Verwendung des veralteten Binärformats "node" zurückzuführen sein npm WARN Weitere Erklärungen finden Sie unter /usr/share/doc/nodejs/README.Debian
Wie kann ich npm dazu bringen zu verstehen, dass nodejs bereits auf dem System installiert ist, der Interpreter-Name jedoch anders ist?