Подтвердить что ты не робот

Узел nodejs npm отсутствует в Windows

Я не могу найти вообще, где npm хранит свои глобальные настройки.

npm config get userconfig

C:\Users\Jack\.npmrc

npm config get globalconfig

C:\Users\Jack\AppData\Roaming\npm\etc\npmrc

Нет файлов ни на одном из этих путей, но

npm config get proxy - > возвращает мой URL-адрес прокси для работы. который я хочу удалить.

npm config -g удалить прокси

npm ERR! Error: ENOENT, unlink 'C:\Users\Jack\AppData\Roaming\npm\etc\npmrc'

npm ERR! System Windows_NT 6.2.9200
npm ERR! command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "config" "-g" "delete" "proxy"
npm ERR! cwd C:\f\Dropbox\apps
npm ERR! node -v v0.8.22
npm ERR! npm -v 1.2.14
npm ERR! path C:\Users\Jack\AppData\Roaming\npm\etc\npmrc
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     C:\f\Dropbox\apps\npm-debug.log
npm ERR! not ok code 0
4b9b3361

Ответ 1

Похоже, что файлы npm, используемые для редактирования его конфигурационных файлов, не создаются при чистой установке, так как npm имеет параметр по умолчанию для каждого из них. Вот почему вы все еще можете получить опции с npm config get <option>: если эти файлы только переопределяют значения по умолчанию, они не создают параметры с нуля.

Я до сих пор не трогал мои вещи npm config, хотя у меня это было уже несколько месяцев. Ни один из файлов еще не был, например ~/.npmrc (на машине с Windows 8.1 с Git Bash), но я мог запустить npm config get <something>, и если это была правильная опция npm, она вернула значение. Когда я запустил npm config set <option> <value>, файл ~/.npmrc, казалось, был создан автоматически, с опцией и ее значением как единственной некомментированной линией.

Как и для удаления параметров, похоже, что это просто возвращает значение по умолчанию или ничего не делает, если этот параметр никогда не был установлен или был отменен, и никогда reset. Кроме того, если этот параметр является единственным явно установленным вариантом, похоже, что ~/.npmrc также удаляется и воссоздается, если вы set что-нибудь еще позже.

В вашем случае (при условии, что он все тот же год спустя), похоже, что вы никогда не устанавливали опцию proxy в npm. Поэтому, как говорится в справочной странице npm config, она настроена на любую переменную среды http_proxy (без учета регистра). Это означает, что ничего не нужно delete, если вы не хотите "удалять" свой прокси-сервер HTTP, хотя вы могли бы set параметр или переменную среды на что-то еще и надеяться, что каким-либо образом не сломает вашу настройку.

Ответ 2

Существует проблема с обновлением npm под Windows. Начальная установка, выполненная как часть установки nodejs с использованием пакета msi, создаст файл npmrc:

C:\Program Files\nodejs\node_modules\npm\npmmrc

когда вы обновляете npm, используя:

npm install -g [email protected]

он установит новую версию в:

C:\Users\Jack\AppData\Roaming\npm

при условии, что вас зовут Джек, это% APPDATA%\npm.

Новая установка не включает файл npmrc, и без него глобальный корневой каталог будет зависеть от того, откуда был запущен узел, поэтому это C:\Program Files\nodejs\node_modules

Вы можете проверить это, запустив:

npm root -g

Это не будет работать, так как npm не имеет разрешения на запись в каталог "Program Files". Вам необходимо скопировать файл npmrc из исходной установки в новую установку. По умолчанию файл имеет только строку ниже:

prefix=${APPDATA}\npm

Это описано здесь: https://github.com/npm/npm/wiki/Устранение неполадок

Ответ 3

Для меня (находящегося в Windows 10) файл npmrc располагался в:

%USERPROFILE%\.npmrc

Протестировано с помощью

  • npm v4.2.0
  • Node.js v7.8.0

Ответ 4

Вы пытались запустить npm config list? И, если вы хотите увидеть значения по умолчанию, запустите npm config ls -l.

Ответ 5

Как это понять

Начните с npm root - он покажет вам корневую папку для пакетов NPM для текущего пользователя. Добавьте -g, и вы получите глобальную папку. Не забудьте вычесть node_modules.

Используйте npm config/npm config -g и убедитесь, что он создаст для вас новый файл .npmrc/npmrc.

Протестировано на Windows 10 Pro, NPM v.6.4.1:

Глобальная конфигурация NPM

C:\Users\%username%\AppData\Roaming\npm\etc\npmrc

Конфигурация NPM для каждого пользователя

C:\Users\%username%\.npmrc

Встроенная конфигурация NPM

C:\Program Files\nodejs\node_modules\npm\npmrc

Ссылки:

Ответ 6

Разве это не тот путь, который вы ищете?

C:\Program Files\nodejs\node_modules\npm\npmmrc

Я знаю, что npm выдает это, но глобальная папка - это папка, в которой установлена ​​ node.js, и все модули.

Ответ 7

Даже если у нас есть .NPMRC может быть в 3 местах, ОБРАТИТЕ ВНИМАНИЕ: файл в папке конфигурации NPM для каждого пользователя имеет приоритет над глобальным & Встроенные конфигурации.

  1. Глобальная конфигурация NPM => C:\Users\%username%\AppData\Roaming\npm\etc\npmrc
  2. Конфигурация NPM для пользователя => C:\Users\%username%.npmrc
  3. Встроенная конфигурация NPM => C:\Program Files\nodejs\node_modules\npm\npmrc

Чтобы узнать, какой файл обновляется, попробуйте настроить прокси с помощью следующей команды   Конфигурация npm установлена https-прокси https://username:[email protected]:6050

После этого откройте файлы .npmrc, чтобы увидеть, какой файл обновляется.