1. ホーム
  2. node.js

[解決済み] NPM - config で env の置換に失敗しました。NPM_TOKEN}

2023-01-08 03:20:35

質問

reactのアプリを作ろうとしているのですが、コマンドを実行すると 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ファイルの削除)

2つ目の可能な解決策

しかし、ファイルを削除したくない場合は、単にこの行を .npmrc ファイル内のこの行を削除するだけです。

コードの行 //registry.npmjs.org/:_authToken=${NPM_TOKEN} (このコードを削除する)

第三の解決策

最悪の場合

  • nano ~/.bash_aliases または nano ~/.bash_profile
  • 加える export NPM_TOKEN="XXXXX-XXXXX-XXXXX-XXXXX"
  • CTRL + X で終了
  • Y で保存