Где npm устанавливает пакеты?
Не подскажете, где я могу найти модули Node.js, которые я установил с помощью npm
?
5 ответ(ов)
Для управления глобальными библиотеками в Node.js можно воспользоваться командой npm list -g
, чтобы увидеть список установленных глобальных библиотек и их местоположение. Если нужно получить укороченный вывод с только путем, используйте npm list -g | head -1
. Если вы хотите отобразить только основные пакеты без их зависимостей, добавьте флаг --depth=0
, то есть команда будет выглядеть как npm list -g --depth=0
, что покажет только глобально установленные пакеты.
На Unix-системах глобальные библиотеки обычно устанавливаются в /usr/local/lib/node
или /usr/local/lib/node_modules
. Если вы установите переменную окружения NODE_PATH
на этот путь, модули смогут быть найдены Node.js.
Для Windows:
- Windows XP:
%USERPROFILE%\AppData\npm\node_modules
- Windows 7, 8 и 10:
%USERPROFILE%\AppData\Roaming\npm\node_modules
Что касается не-глобальных библиотек, они устанавливаются в подкаталог node_modules
в текущей директории.
Для просмотра установленных не-глобальных библиотек в вашей текущей директории можно выполнить команду npm list
.
При установке пакетов для глобального использования, добавьте флаг -g
. Например:
npm install -g pm2
- pm2 будет установлен глобально и обычно будет находиться в/usr/local/lib/node_modules
(для проверки используйтеnpm root -g
).npm install pm2
- pm2 будет установлен локально и будет находиться в подкаталоге/node_modules
текущей директории.
На Windows я использовал команду npm list -g
, чтобы узнать, где находятся установленные пакеты. По умолчанию мои (глобальные) пакеты устанавливались в C:\Users\[ИмяПользователя]\AppData\Roaming\npm
.
Если вы ищете исполняемый файл, который установил npm, например, для того чтобы добавить его в ваш PATH, вы можете просто выполнить команду:
npm bin
или, если вам нужен глобально установленный пакет:
npm bin -g
Эти команды выведут путь к папке с установленными исполняемыми файлами.
Если модуль был установлен с флагом глобально (-g
), вы можете узнать родительское местоположение, выполнив команду:
npm get prefix
или
npm ls -g --depth=0
Эти команды выведут местоположение установки вместе со списком установленных модулей.
Не прямой ответ, но может быть полезно...
У npm есть папка кэша, которую можно найти, выполнив команду npm config get cache
(%AppData%/npm-cache
на Windows).
Сначала модули npm загружаются сюда, а затем копируются в глобальную папку npm (%AppData%/Roaming/npm
на Windows) или в папку, специфичную для проекта (your-project/node_modules
).
Если вы хотите отслеживать npm-пакеты, и в какой-то момент вам потребуется список всех загруженных npm-пакетов (если кэш npm не очищался), обратите внимание на эту папку. Структура папок выглядит следующим образом: {cache}/{name}/{version}
.
Также может быть полезно это: https://docs.npmjs.com/cli/cache
Отправка аргументов командной строки в npm-скрипт
Как вывести список установленных пакетов npm?
Функция map для объектов (вместо массивов)
Как удалить модули npm в Node.js?
Как получить полный объект в console.log() Node.js, а не '[Object]'?