Пакеты глобальных узлов установлены в неправильном каталоге
Я пытаюсь установить Hexo глобально, используя npm. Когда я бегу npm install -g hexo-cli
Мне сообщили, что он был установлен на /Users/myusername/.node/bin/hexo -> /Users/myusername/.node/lib/node_modules/hexo-cli/bin/hexo
Проблема возникает, когда я бегу hexo init blog
и команда hexo не найдена.
Я установил Node и npm с помощью Homebrew, поэтому при запуске which node
а также which npm
, результаты /usr/local/bin/node
а также /usr/local/bin/npm
соответственно.
Я думаю, что у меня все еще есть оставшиеся файлы и каталоги с момента, когда я установил Node без homebrew, но я не хочу начинать удалять вещи, не зная последствий. Могу ли я удалить все файлы, расположенные в /Users/myusername/.node/
каталог? Я не могу понять, почему npm не устанавливается в соответствующий каталог.
2 ответа
Немного покопавшись, я обнаружил, что моя префиксная переменная npm указывает на неправильный каталог, оставленный старой установкой Node. Я побежал npm config get prefix
чтобы увидеть, куда он указывает.
Я установил новое значение префикса, используя npm config set prefix /usr/local
, Доморощенный связан с этим каталогом через /usr/local/bin
, Я удалил hexo-cli и переустановил через npm, и теперь он работает отлично.
Простой способ справиться с переменными среды / проблемами пути в Windows:
Команда запуска:
npm install -g hexo
Использование командной строки node.js вместо cmd
окна предоставляются самой Windows.
Для пользователей NVM
Бегать nvm use --delete-prefix v10.13.0 --silent
замена v10.13.0
с любой версией узла, который вы используете.