Я часто сталкиваюсь с проблемами, связанными с путями, при компиляции или запуске приложения. У меня в моей системе есть две версии узла , одна из которых находится в официальном репозитории, а другая установлена вручную из исходного кода. Сегодня я хотел скомпилировать скобки , когда я запустил npm install
, он попросил меня использовать более позднюю версию, такую как 1.4.20. Версия по умолчанию в /usr/bin/npm
, которая не работала. Установленный вручную находится в /usr/local/bin/npm
. Есть ли способ сделать /usr/local/bin/npm
в качестве пути по умолчанию, используя update-alternatives
или другой метод?
Например, вы можете установить текстовый редактор по умолчанию с помощью
sudo update-alternatives --config editor
Я нашел, как сделать это. Сначала я проверил путь по умолчанию npm
, который является более старой версией (1.3.10) в /usr/bin/npm
, я заметил, что это - символьная ссылка на /usr/share/npm/bin/npm-cli.js
, я удалил его
sudo unlink /usr/bin/npm
Тогда, я попробовал следующую команду
sudo update-alternatives --install /usr/bin/npm npm /usr/local/bin/npm 10
sudo update-alternatives --install /usr/bin/npm npm /usr/share/npm/bin/npm-cli.js 20
Теперь, я могу легко переключиться между ними использующий
sudo update-alternatives --config npm
, Это работает хорошо
Так как Вы упомянули узел , я думал, что мог бы указать, что это - хорошая возможность использовать менеджер по установке Н для NodeJS. Если у меня будет "высокоуровневый" диспетчер пакетов как это доступное, то я буду обычно использовать его более чем альтернативы обновления . Это обычно менее сложно, чем попытка разыскать важные файлы самостоятельно, IMO. Тем не менее я думаю , альтернативы обновления будут все еще работать.