反応アプリを構築しようとしていますが、コマンドnpm -i
を実行すると、次のエラーが発生します。
Error: Failed to replace env in config: ${NPM_TOKEN}
at /usr/local/lib/node_modules/npm/lib/config/core.js:415:13
at String.replace (<anonymous>)
at envReplace (/usr/local/lib/node_modules/npm/lib/config/core.js:411:12)
at parseField (/usr/local/lib/node_modules/npm/lib/config/core.js:389:7)
at /usr/local/lib/node_modules/npm/lib/config/core.js:330:24
at Array.forEach (<anonymous>)
at Conf.add (/usr/local/lib/node_modules/npm/lib/config/core.js:328:23)
at ConfigChain.addString (/usr/local/lib/node_modules/npm/node_modules/config-chain/index.js:244:8)
at Conf.<anonymous> (/usr/local/lib/node_modules/npm/lib/config/core.js:316:10)
at /usr/local/lib/node_modules/npm/node_modules/graceful-fs/graceful-fs.js:78:16
/usr/local/lib/node_modules/npm/lib/npm.js:61
throw new Error('npm.load() required')
^
Error: npm.load() required
at Object.get (/usr/local/lib/node_modules/npm/lib/npm.js:61:13)
at process.errorHandler (/usr/local/lib/node_modules/npm/lib/utils/error-handler.js:205:18)
at process.emit (events.js:182:13)
at process._fatalException (internal/bootstrap/node.js:448:27)
MacOS High Sierraを使用しています。次のコマンドでNPM_TOKENを環境変数として設定しようとしました:
set -x NPM_TOKEN = xyz
しかし、それは機能しません。何が問題ですか?
簡単な解決策:rm -f ./.npmrc
(.npmrcファイルの削除)
ただし、ファイルを削除したくない場合は、.npmrc
ファイルからこのコード行を削除するだけです。
コード行://registry.npmjs.org/:_authToken=${NPM_TOKEN}
(このコードを削除)
最悪のシナリオ:
nano ~/.bash_aliases
またはnano ~/.bash_profile
export NPM_TOKEN="XXXXX-XXXXX-XXXXX-XXXXX"
〜/ .profileを初めて設定し(OSX、Ubuntu)、次の行を追加した場合:export NPM_TOKEN = "XXXXX-XXXXX-XXXXX-XXXXX"。その後、後でこの行を端末に入力する必要があります。
source ~/.profile
グーグルから来ているUbuntuの人々のために:
IDE(WebStormのような)でnpm install
を実行するのが私の問題でした。NPM_TOKEN環境変数を.bash_profile
に追加してターミナルを再起動しましたが、IDEは再起動しませんでした!= IDEは、再起動するまで環境への変更を反映しませんでした。