Может ли кто-нибудь сказать мне, где я могу найти модули Node.js, которые я установил с помощью npm
?
Вы можете запустить npm list -g
чтобы увидеть, где установлены глобальные библиотеки.
В системах Unix они обычно помещаются в /usr/local/lib/node
или /usr/local/lib/node_modules
при глобальной установке. Если вы установите NODE_PATH
среды NODE_PATH
в этот путь, модули могут быть найдены по узлу.
Windows XP - %USERPROFILE%\AppData\npm\node_modules
Windows 7, 8 и 10 - %USERPROFILE%\AppData\Roaming\npm\node_modules
Библиотеки не -g установлены в node_modules
в той папке, в которой вы находитесь.
Вы можете запустить npm list
чтобы увидеть установленные не -g lobal библиотеки для вашего текущего местоположения.
npm list -g
как предложено в другом ответе.
Команда npm root
сообщит вам эффективный каталог установки ваших пакетов npm.
Если текущим рабочим каталогом является пакет узлов или подкаталог пакета узлов, npm root
сообщит вам локальный каталог установки. npm root -g
покажет глобальный установочный корень независимо от текущего рабочего каталога.
node_modules
находится в /usr/local/lib/node_modules
. Когда я делаю то есть sudo npm uninstall browserify -g
(при условии, что я делал sudo npm install browserify -g
раньше), он удаляет его оттуда.
Используйте команду npm root -g
чтобы узнать ваш глобальный путь npm
.
$ npm root -g
/usr/local/lib/node_modules
Другие ответы дают вам ответы, специфичные для платформы, но общий:
Когда вы устанавливаете глобальный модуль с помощью npm install -g something
, npm ищет конфигурационную переменную prefix
, чтобы узнать, где установить модуль.
Вы можете получить это значение, запустив npm config get prefix
Чтобы отобразить все глобальные модули, доступные в этой папке, используйте npm ls -g --depth 0
(depth 0
, чтобы не отображать их зависимости).
Если вы хотите изменить путь глобальных модулей, используйте npm config edit
и поместите prefix = /my/npm/global/modules/prefix
в файл.
При использовании некоторых инструментов, таких как nodist, они меняют путь установки по умолчанию для платформы npm.
В окнах я использовал npm list -g
, чтобы узнать по умолчанию, что мои (глобальные) пакеты устанавливались на C:\Users\[Username]\AppData\Roaming\npm
.
В более ранних версиях модули NPM всегда помещались в /usr/local/lib/ node или везде, где вы указали корень npm в файле .npmrc. Однако в NPM 1.0+ модули устанавливаются в двух местах. У вас могут быть установлены модули локально для вашего приложения в /.node_modules или вы можете установить их глобально, что будет использовать выше.
Дополнительную информацию можно найти на https://github.com/isaacs/npm/blob/master/doc/install.md
Если вы ищете исполняемый файл, установленный npm, возможно, потому что вы хотите поместить его в вашу переменную PATH, вы можете просто сделать
npm bin
или же
npm bin -g
command not found
error. Если это так, добавьте приведенное выше в PATH: export PATH=$PATH:$(npm bin -g)
вуаля
Не прямой ответ, но может помочь....
У npm также есть папка кеша, которую можно найти, запустив npm config get cache
(%AppData%/npm-cache
в Windows).
Модули npm сначала загружаются здесь, а затем копируются в глобальную папку npm (%AppData%/npm/Roaming
в Windows) или в папку, специфичную для проекта (your-project/node_modules
).
Так что, если вы хотите отслеживать пакеты npm, и как-то, список всех загруженных пакетов npm (если кэш npm не очищен), взгляните на эту папку. Структура папок выглядит как {cache}/{name}/{version}
Это может также помочь https://docs.npmjs.com/cli/cache
Если модуль был установлен с глобальным (-g) флагом, вы можете получить родительское местоположение, выполнив следующую команду
npm получить префикс
или
npm ls -g --depth = 0
который будет печатать местоположение вместе со списком установленных модулей
Приветствия: -)
Самый простой способ - сделать
npm list -g
чтобы просмотреть пакет и просмотреть их установленное местоположение.
Я установил npm через chololatey, поэтому местоположение
C:\MyProgramData\шоколадным\Lib\nodejs.commandline.0.10.31\инструменты\node_modules
C:\MyProgramData\- это шоколадное место репо.
Вы можете найти глобально установленные модули командой
npm list -g
Он предоставит вам место, где были установлены модули node.js.
C:\Users\[Username]\AppData\Roaming\npm
Если вы устанавливаете node.js модули локально в папку, вы можете ввести следующую команду, чтобы увидеть местоположение.
npm list
Из docs:
Пакеты упаковываются в папку node_modules под префиксом. При установке локально это означает, что вы можете require ( "packagename" ) для загрузки основного модуля или require ( "packagename/lib/path/to/sub/module" ) для загрузки других модулей.
Глобальные установки в системах Unix переходят на {prefix}/lib/ node_modules. Глобальная установка в Windows переходит на {prefix}/node_modules (то есть нет lib.)
Скопированные пакеты устанавливаются одинаково, за исключением того, что они сгруппированы вместе в подпапке соответствующей папки node_modules с имя этого префикса области с помощью символа @, например. Установка npm @myorg/package помещает пакет в {Префикс}/node_modules/@MyOrg/пакет. См. Область для более подробной информации.
Если вы хотите потребовать() пакет, то установите его локально.
Вы можете получить {prefix}
с помощью npm config get prefix
. (Полезно, если вы установили node с nvm).
Из docs:
В npm 1.0 есть два способа установить вещи:
глобально - это отбрасывает модули в
{prefix}/lib/node_modules
и помещает исполняемые файлы в{prefix}/bin
, где{prefix}
обычно что-то вроде/usr/local
. Он также устанавливает man-страницы в{prefix}/share/man
, если они поставлены.local - это устанавливает ваш пакет в текущем рабочем каталоге. Node модули входят
./node_modules
, исполняемые файлы входят в./node_modules/.bin/
, а man man arent установлен вообще.
Вы можете получить {prefix}
с помощью npm config get prefix
. (Полезно, если вы установили Node с nvm).
В Ubuntu 14.04 они установлены на
/USR/Library/node_modules
Как говорят другие ответы, лучший способ - сделать
npm list -g
Однако, если у вас установлено большое количество пакетов npm
, вывод этой команды может быть очень длинным и большой болью для прокрутки вверх (иногда даже не возможно прокручивать ту сторону назад).
В этом случае проведите вывод в программу more
, например,
npm list -g | more
Windows 10: Когда я запустил npm prefix -g
, я заметил, что место установки находится внутри пути оболочки git, который я использовал для установки. Даже если это местоположение добавлено в путь, команда из глобально установленного пакета не будет распознана. Исправлено:
npm config edit
Если вы пытаетесь получить доступ к своему глобальному каталогу из кода, вы можете вернуться назад из process.execPath
. Например, чтобы найти wsproxy
, который находится в {NODE_GLOBAL_DIR}/bin/wsproxy
, вы можете просто:
path.join(path.dirname(process.execPath), 'wsproxy')
Кстати, npm будет искать node_modules в родительских папках (вплоть до самого root), если не может найти их в локальной папке.
$HOME/.npm-global/lib/node_modules
это$HOME/.npm-global/lib/node_modules