Глобальный пакет NPM установлен, но команда не найдена

Я установил в глобальном масштабе два пакета npm "скачать" и "enigmavirtualbox" через командную строку:

npm install -g download и npm install -g engimavirtualbox

Я пытаюсь использовать их в пакетном файле для объединения одного .exe файла из моего проекта node. Для обоих команд npm list -g <packagename> выводятся соответствующие выходные данные независимо от текущего рабочего каталога.

Однако внутри моей партии script команды "скачать" и "enigmavirtualbox" не могут быть найдены.

Запуск npm root -g дает C:\Users\<username>\AppData\Roaming\npm\node_modules и, просматривая эту папку, я вижу, что папки для обоих пакетов присутствуют.

Что я пробовал:

  • Изменение npm root, как описано здесь
  • Удаление и переустановка пакетов
  • Добавить env. переменной NODE_PATH, чтобы указать на C:\Users\<username>\AppData\Roaming\npm\node_modules
  • Добавить C:\Users\<username>\AppData\Roaming\npm\node_modules в PATH env. переменная

Такая же настройка работает на моем втором компьютере (оба запускают Win7 64bit). Что-то не так с моей установкой node, или что я делаю неправильно?

Ответы

Ответ 1

Исполняемые двоичные файлы и .cmd файлы заканчиваются на C:\Users\<username>\AppData\Roaming\npm (минус node_modules в конце), поэтому добавление этого пути в PATH env. переменная исправила проблему.

Ответ 2

Если вышеуказанный метод не работает, используйте эту команду для явного указания пути

npm config set prefix c:/Users/<username>/AppData/Roaming/npm