Теперь npm поставляется с node. Что это значит?
Node noob здесь.
Ранее я установил как npm, так и node.
По-видимому, npm поставляется с node. (ссылка)
К моему новичку виду, это означает, что моя предыдущая двойная установка старая и уродливая. 1 бинарный > 2 двоичных файла. Поэтому я удалил оба.
Затем я установил последнюю версию node, следуя процедуре . (я запускаю eOS)
Терминал
[email protected]:-$ which node
/usr/bin/node
[email protected]:-$ node -v
v0.10.22
[email protected]:-$ which npm
[email protected]:-$ npm -v
bash: /usr/bin/npm: No such file or directory
Я всегда могу запустить:
curl https://npmjs.org/install.sh | sh
но это, по-видимому, указывает на то, что npm фактически НЕ входит в node.
Когда они говорят, что они включены, они просто означают, что код находится в одном и том же репо, но двоичные файлы все еще отличаются?
Заключительный вопрос У меня /usr/bin/ node, а также /usr/bin/nodejs
могу ли я удалить один из них? im не уверен, когда/где я взял вторую копию.
Ответы
Ответ 1
- Да, пакет nodejs включает в себя как исполняемые файлы
node
, так и npm
. Код для каждого имеет свое собственное репо, но при упаковке оба включены.
- npm источник: https://github.com/isaacs/npm
- node источник: https://github.com/joyent/node
- Когда вы устанавливаете этот .deb файл из PPA, вы должны получить как
/usr/bin/nodejs
, так и /usr/bin/npm
и 2 символические ссылки в /usr/bin/node
(что указывает) /etc/alternatives/node
(что указывает на /usr/bin/nodejs
).
- Если это не так, ваша установка не полностью преуспела, скорее всего, из-за противоречивых файлов, которые вы оставили с вашей ручной установки. Я бы предложил удалить .deb, затем убедиться, что нет устаревших файлов, оставшихся после установки вручную, а затем снова установить.
Ответ 2
У меня были проблемы (в основном на Mac), когда npm заканчивается в каталогах, которые не находятся в терминале PATH. Если вы можете выяснить, где находится npm, вы можете просто добавить его к своему пути с чем-то вроде:
export PATH=$PATH:/path/to/npm
Я думаю (я не на mac, поэтому я не могу проверить в данный момент), что он иногда попадает в /usr/local/share/
. Но, во всяком случае, проблема скорее всего не в том, что npm не установлен, но что он установлен где-то, чего вы не ожидаете.
Ответ 3
Только пакеты node.js поставляются с npm. поэтому, если вы устанавливаете с помощью .msi
, .exe
, .dmg
.pkg
, .deb
или с помощью установщика пакетов, например apt-get
, yum
или brew
, тогда вы будете иметь как node и npm.
Однако npm не является частью ядра node. если вы устанавливаете node и используете метод, в котором вы используете ./configure
или make install
|| make link
, то npm не будет установлен и должен быть скомпилирован с использованием того же типа установки, и node должен быть помещен на ваш путь.
Если вы использовали git или распаковали node, и вы можете увидеть конфигурацию script, вам также понадобится приобрести npm.