Я не понимаю, почему команда node не работает, тогда как nodejs работает:
$ node --version
zsh: command not found: node
$ nodejs --version
v0.10.15
Я попробовал apt-get install nodejs, но последняя версия уже установлена. 1]
И кроме того:
$ npm
zsh: command not found: npm
Я думал, что npm включен в NodeJS> 0.10?
Я согласен, это немного проблема, но я не знаю, почему это происходит.
Прежде всего, просто создайте символическую ссылку из вызываемого node, указывающий на двоичный файл nodejs.
ln -s /usr/bin/nodejs /usr/bin/node
. Несколько руководств, которые я нашел для установки Nodejs (здесь и здесь), имеют аналогичный код для тестирования была ли установка выполнена правильно. Поэтому создайте простой сервер следующим образом:
// hello_node.js
var http = require('http');
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello Node.js\n');
}).listen(8124, "127.0.0.1");
console.log('Server running at http://127.0.0.1:8124/');
, а затем запустите его в nodejs со следующим:
node hello_node.js
И затем, когда я пытался использовать npm для установки что-то, он терпел неудачу и сообщал о том же сообщении node not found.
Как и @ minerz029, уже сказано, что существует конфликт с пакетом node. Но если вам все еще нужна команда node (потому что сценарий использует, например, только node), правильным способом является установка пакета nodejs-legacy:
apt-get install nodejs-legacy
и не создание символической ссылки (особенно не в /usr/bin/). Это обеспечит команду node для nodejs.
может потребоваться установка вручную
sudo apt-get install npm
Попробуйте это
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs
:)
Быстрое исправление для пользователей nvm. Я использую nvm (диспетчер версий узлов) и для меня использовать команду npm, которую я должен всегда выдавать до npm этой команды nvm use 0.x (замените 0.x на 0.11 или 0.10, например, версию, которую вы хотите использовать).
Как уже упоминалось в minerz029, некоторые версии пакета nodejs не будут предоставлять двоичный файл node из-за другого пакета, ранее использующего это имя. Решение так же просто, как после шагов installatoin на собственном веб-сайте Node:
Поскольку minerz029 уже упоминал
На данный момент эти шаги: [ ! d4]
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
Но было бы лучше проверить исходную ссылку, чтобы убедиться, что вы используете последнюю версию.