Изменить каталог глобальной установки по умолчанию для node.js модулей в Windows?
В моей установке windows PATH
есть C:\Program Files\nodejs
, где выполняется исполняемый файл node.exe
. Я могу запустить node
из оболочки, а также npm
. Я бы хотел, чтобы новые исполняемые файлы также были установлены в C:\Program Files\nodejs
, но это невозможно сделать.
Параметры NODE_PATH
и NODE_MODULES
не меняют ничего: по умолчанию все еще установлены в %appdata%\npm
.
Как изменить глобальный путь установки?
Ответы
Ответ 1
Все, что вам нужно, это прочитать документацию npm-folders
. Я не хочу запускать свой ноутбук Win, поэтому я не могу его проверить, но вы должны только изменить prefix
на c:\Program Files\nodejs
в вашем файле конфигурации. Если вы хотите изменить его глобально для всех пользователей, отредактируйте файл c:\Program Files\nodejs\npmrc
, в противном случае создайте/отредактируйте c:\Users\{username}\.npmrc
.
Но это изменение, вероятно, будет иметь некоторые побочные эффекты, поэтому прочитайте это обсуждение раньше. Я думаю, что твоя идея не очень хорошая.
Ответ 2
попытка установить глобальные пакеты в C:\Program Files (x86)\nodejs\
предоставила мне Запуск от имени администратора, потому что npm пыталась установить в
C:\Program Files (x86)\nodejs\node_modules\
чтобы устранить это, измените каталог глобальной установки на C:\Users\{username}\AppData\Roaming\npm
:
в C:\Users\{username}\
, создайте файл .npmrc
с содержимым:
prefix = "C:\\Users\\{username}\\AppData\\Roaming\\npm"
ссылка
среда
Установщик nodejs x86 в C:\Program Files (x86)\nodejs\
в Windows 7 Ultimate N 64-бит SP1
node --version
: v0.10.28
npm --version
: 1.4.10
Ответ 3
Вы можете увидеть мой ответ на этот вопрос в ответе на другой вопрос.
В Windows глобальный путь установки фактически находится в вашем каталоге профиля пользователя
-
%USERPROFILE%\AppData\Roaming\npm
-
%USERPROFILE%\AppData\Roaming\npm-cache
- ПРЕДУПРЕЖДЕНИЕ. Если вы выполняете синхронизированные события или другую автоматизацию в качестве другого пользователя, убедитесь, что вы запустили
npm install
в качестве этого пользователя. Некоторые модули/утилиты должны быть установлены глобально.
- УБОРКИ УСТАНОВЩИКА: Возможно, вам придется создавать эти каталоги или добавлять каталог
...\npm
к вашему пути пользователей самостоятельно.
Чтобы изменить "глобальное" местоположение для всех пользователей на более подходящее общее глобальное местоположение %ALLUSERSPROFILE%\(npm|npm-cache)
(сделайте это как администратор):
- создать каталог
[NODE_INSTALL_PATH]\etc\
- это необходимо, прежде чем пытаться выполнить действия
npm config --global ...
- создать глобальное (административное) местоположение для модулей npm
-
C:\ProgramData\npm-cache
- здесь будут доступны модули npm
-
C:\ProgramData\npm
- здесь будут присутствовать двоичные скрипты для глобальных модулей.
-
C:\ProgramData\npm\node_modules
- здесь будут установлены глобально установленные модули.
- установите соответствующие разрешения
-
Администраторы
- : измените
- аутентифицированные пользователи: чтение/выполнение
- Установить глобальные параметры конфигурации (Командная строка администратора)
-
npm config --global set prefix "C:\ProgramData\npm"
-
npm config --global set cache "C:\ProgramData\npm-cache"
- Добавить
C:\ProgramData\npm
в переменную окружения System Path
Если вы хотите изменить свое "глобальное" местоположение пользователя на %LOCALAPPDATA%\(npm|npm-cache)
путь:
- Создайте необходимые каталоги
-
C:\Users\YOURNAME\AppData\Local\npm-cache
- здесь будут модули npm.
-
C:\Users\YOURNAME\AppData\Local\npm
- здесь будут бинарные скрипты для установленных модулей
-
C:\Users\YOURNAME\AppData\Local\npm\node_modules
- здесь будут установлены глобально установленные модули.
- Настроить npm
-
npm config set prefix "C:\Users\YOURNAME\AppData\Local\npm"
-
npm config set cache "C:\Users\YOURNAME\AppData\Local\npm-cache"
- Добавьте новый путь npm к вашей среде
PATH
.
-
setx PATH "%PATH%;C:\Users\YOURNAME\AppData\Local\npm"
Ответ 4
Основываясь на концепции установки chocolatey
и идее, предложенной @Tracker, для меня работала следующая: и все пользователи на окнах были довольны работой с nodejs
и npm
.
Выберите C:\ProgramData\nodejs
в качестве установочного каталога для nodejs
и установите nodejs
любым пользователем, являющимся членом группы администраторов.
Создайте папку с именем npm-cache
в корне каталога установки, которая после следующего выше будет C:\ProgramData\nodejs\npm-cache
.
Создайте папку с именем etc
в корне каталога установки, которая после следующего выше будет C:\ProgramData\nodejs\etc
.
Задайте переменную окружения NODE
как C:\ProgramData\nodejs
.
Задайте переменную окружения NODE_PATH
как C:\ProgramData\nodejs\node_modules
.
Убедитесь, что добавлена переменная среды %NODE%
, ранее созданная выше (или ее путь) добавлена в переменную среды %PATH%
.
Измените %NODE_PATH%\npm\npmrc
следующим контентом prefix=C:\ProgramData\nodejs
Из командной строки установите глобальную конфигурацию так:
npm config --global set prefix "C:\ProgramData\nodejs"
npm config --global set cache "C:\ProgramData\nodejs\npm-cache"
Важно, чтобы описанные выше шаги выполнялись предпочтительно последовательно и до обновления npm (npm -g install [email protected]
) или пытались установить любой модуль npm
.
Выполнение вышеуказанных шагов помогло нам запустить nodejs
как системную установку, легко доступную всем пользователям с надлежащими разрешениями. Затем каждый пользователь может выполнить NODE
и npm
по мере необходимости.
Ответ 5
Вы должны использовать эту команду для установки глобальной установки пакетов npm пакетов
(git bash) npm config --global set prefix </path/you/want/to/use>/npm
(cmd/ git -cmd) npm config --global set prefix <drive:\path\you\want\to\use>\npm
Вы также можете рассмотреть расположение npm-cache
рядом с ним. (как это было бы при нормальной установке nodejs на windows)
(git bash) npm config --global set cache </path/you/want/to/use>/npm-cache
(cmd/ git -cmd) npm config --global set cache <drive:\path\you\want\to\use>\npm-cache
Ответ 6
Глобальная папка по умолчанию C:\Users\{username}\AppData\Roaming\npm
.
Вы можете создать (если он не существует) файл .npmrc
в C:\Users\{username}\
и добавить
prefix = "path\\to\\yourglobalfolder"
.
Обратите внимание, что в окнах путь должен быть разделен на double back-slash
.
Ответ 7
Использование символической ссылки Windows из путей C:\Users {username}\AppData\Roaming\npm и C:\Users {username}\AppData\Roaming\npm-cache к месту назначения отлично поработало для меня.
Как добавить символическую ссылку
![введите описание изображения здесь]()
Ответ 8
В Windows, если вы хотите переместить папку npm или nodejs на диск C в другое место, но она по-прежнему гарантирует, что node и npm работают хорошо, вы можете создать символическую ссылку следующим образом:
Открыть командную строку:
mklink /D "your_location_want_to_create_symlink" "location_of_node_npm_file"
Пример:
mklink /D "C:\Users\MyUser\AppData\Roaming\npm" "D:\Nodejs Data\npm"
Теперь вы создали символическую ссылку для папки npm, эта символическая ссылка будет ссылаться на D:\Nodejs Data\npm
Все будет работать хорошо.
Ответ 9
Я попробовал большинство ответов здесь, кажется, ничего не работает в моем случае. Поэтому я изменил местоположение Temp в моих переменных env на C:\npm. Затем он начал работать. Это не очень хорошая идея, но временное решение.
Ответ 10
Удалить папку узла полностью из папки файла программы. Удалите node.js, а затем переустановите его. change Путь переменной окружения PATH. удалить файл.npmrc из C:\users\yourusername
Ответ 11
он не требует много конфигураций, просто перейдите к расширенным системным настройкам, скопируйте путь, где вы установили свой узел, и просто создайте переменную окружения и проверьте с помощью команды -v в своем приглашении!
Ответ 12
Чтобы изменить глобальный каталог установки по умолчанию для модулей node.js(npm) в Windows, необходимо исправить 2 пути.
Сначала проверьте текущий путь, где устанавливаются модули узлов, когда вы пытаетесь установить их глобально, используя следующую команду:
список npm -g --depth = 0
Он вернет вам текущий путь, где устанавливаются модули узлов прямо сейчас. Пример: D:\vsc\typescript
Теперь перейдите по следующему пути, чтобы увидеть папки npm и npm-cache. C:\Users\имя пользователя (ИЛИ номер)\AppData\Roaming
В папке Roaming вашего диска C вы найдете папки npm и npm-cache. Нажмите на папку + npm + и выберите путь [Просто нажмите на путь панели будет выбран автоматически, скопируйте его]. Это путь, который вам нужно выбрать
После того, как вы скопируете этот путь, установите его для переменных среды с именем переменной Path (все, что вы можете выбрать в качестве имени). Теперь вы установили путь к вашей папке npm, теперь пришло время установить префикс. Зайдите в папку npm и проверьте, существует ли папка node_module, если нет, создайте новую папку с именем node_modules. Вы все глобальные модули попадете в эту папку после выполнения всех шагов.
Заключительный шаг: перейдите к CMD и введите следующую команду:
npm установленный префикс C:\Users\имя пользователя (число)\AppData\Roaming\npm\node_modules
Опять же, это тот же путь, который мы выбрали для переменной среды, мы просто добавляем еще одну папку в путь, и это node_module.
Все установлено.... Попробуйте сейчас... Это будет работать..
Ответ 13
Найдите текущий путь установки пакета глобального узла, выполнив следующую команду.
список npm -g --depth = 0
Измените этот путь на правильный путь с помощью следующей команды.
npm установленный префикс C:\Users\имя пользователя (число)\AppData\Roaming\npm\node_modules
Это сработало для меня. Прочитайте мой предыдущий ответ для лучшего понимания.
Ответ 14
Шаг 1: npm config get prefix
- Путь по умолчанию:
%USERPROFILE%\AppData\Roaming\npm
Шаг 2: npm config get cache
- Путь по умолчанию:
%USERPROFILE%\AppData\Roaming\npm-cache
Шаг 3: npm config set prefix <Your New Location>\npm
- пример
npm config set prefix C:\\dev\\node\\npm
Шаг 4: npm config set cache <Your New Location>\npm-cache
- пример
npm config set cache C:\\dev\\node\\npm-cache
Выполните шаги 1 и 2 еще раз, чтобы проверить, обновляются ли пути по мере необходимости
Это оно. Всякий раз, когда вы устанавливаете глобальные пакеты, вы должны видеть, что они установлены внутри \npm\node_modules