web-dev-qa-db-ja.com

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
36
Jack

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_が自動的に作成されたようです。

オプションの削除に関しては、これは値をデフォルト値に戻すだけであるように見えます。または、そのオプションが設定されていないか、設定解除およびリセットされていない場合は何もしません。さらに、そのオプションが明示的に設定されている唯一のオプションである場合、_~/.npmrc_も削除され、後でsetを追加すると再作成されます。

あなたの場合(1年後も同じであると仮定)、proxynpmオプションを設定したことがないようです。したがって、npmconfigヘルプページにあるように、_http_proxy_(大文字と小文字を区別しない)環境変数が設定されます。つまり、HTTPプロキシを「削除」する場合を除き、deleteには何もありませんが、オプションまたは環境変数を他の何かにsetして、セットアップが何らかの形で壊れないことを望みます。 。

21
trysis

Windowsでのnpmのアップグレードに問題があります。 msiパッケージを使用してnodejsインストールの一部として実行される初期インストールでは、npmrcファイルが作成されます。

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

次を使用してnpmを更新するとき:

npm install -g npm@latest

次の場所に新しいバージョンがインストールされます。

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

あなたの名前がJack、つまり%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/Troubleshooting

27
oenpelli

私にとって(Windows 10の場合) npmrcファイル は次の場所にありました。

%USERPROFILE%\.npmrc

テスト済み:

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

npm config list?また、デフォルトを表示する場合は、npm config ls -l

6
user1990218

把握方法

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

参照:

3
Vladimir Salin

これはあなたが探している道ではありませんか?

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

Npmはそれを出力することを知っていますが、グローバルフォルダはnode.jsがインストールされているフォルダであり、すべてのモジュールがあります。

1
Avner Solomon