web-dev-qa-db-fra.com

NPM - Impossible de remplacer env dans la configuration: $ {NPM_TOKEN}

J'essaie de créer une application React, mais lorsque j'exécute la commande npm -i cela me donne l'erreur suivante:

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)

J'utilise MacOS High Sierra. J'ai essayé de définir NPM_TOKEN en tant que variable d'environnement avec la commande suivante:

set -x NPM_TOKEN = xyz

mais ça ne marche pas. Quel est le problème?

31
fd.huseynov

Première solution possible:

Solution simple: rm -f ./.npmrc (Suppression d'un fichier .npmrc)

Deuxième solution possible:

Cependant, si vous ne souhaitez pas supprimer le fichier, vous pouvez simplement supprimer cette ligne de code dans le .npmrc fichier.

Ligne de code: //registry.npmjs.org/:_authToken=${NPM_TOKEN} (Supprimer ce code)

Troisième solution possible

Pire scénario:

  • nano ~/.bash_aliases ou nano ~/.bash_profile
  • ajouter export NPM_TOKEN="XXXXX-XXXXX-XXXXX-XXXXX"
  • CTRL + X pour quitter
  • Y pour économiser
3

Si vous venez de définir votre ~/.profile pour la première fois (OSX, Ubuntu) et que vous avez ajouté cette ligne: export NPM_TOKEN = "XXXXX-XXXXX-XXXXX-XXXXX". Ensuite, vous devez entrer cette ligne dans le terminal par la suite:

source ~/.profile
1
dang

Pour les personnes sur Ubuntu venant de Google:

  • nano ~/.bash_aliases
  • export NPM_TOKEN = "PUT_YOUR_TOKEN_HERE"
  • CTRL + X pour quitter
  • Y pour économiser
0
anon58192932

Fonctionnement npm install dans un IDE (comme WebStorm) était mon problème. J'ai ajouté la variable d'environnement NPM_TOKEN à .bash_profile et redémarré mon Terminal, mais pas mon IDE! Le IDE n'a pas repris les modifications apportées à l'environnement avant que je ne le redémarre également.

0
Jordan Dodson