J'utilise Ubuntu 16.04 J'ai supprimé NPM afin d'installer une version plus ancienne. (Je ne peux pas exactement commander ce que j'ai utilisé). maintenant je ne peux pas l'installer à nouveau. npm -v
production: bash: /usr/bin/npm: /usr/bin/nodejs: bad interpreter: No such file or directory
which npm
production: /usr/bin/npm
curl -L http://npmjs.org/install.sh | Sudo sh
Production:
`install npm@latest
fetching: https://registry.npmjs.org/npm/-/npm-5.5.1.tgz
module.js:544
throw err;
^
Error: Cannot find module '/tmp/npm.9881/package/bin/read-package-json.js'
at Function.Module._resolveFilename (module.js:542:15)
at Function.Module._load (module.js:472:25)
at Function.Module.runMain (module.js:682:10)
at startup (bootstrap_node.js:191:16)
at bootstrap_node.js:613:3
up to date in 0.059s
/usr/local/bin/npx -> /usr/local/lib/node_modules/npm/bin/npx-cli.js
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
+ [email protected]
added 1 package in 1.907s
It worked`
UPD: Résolu. Supprimer complètement node/nodejs/npm et supprimer tous les dossiers relatifs, puis réinstaller via NVM aidé. https://www.digitalocean.com/community/tutorials/how-to-install-node-js-with-nvm-node-version-manager-on-a-vps
La meilleure façon d'installer nodejs est via nvm. Ici, vous pouvez installer/utiliser plusieurs versions de nodejs sur une machine.
https://github.com/creationix/nvm
puis
nvm install $vesionNo
nvm use $versionNO
// for default
nvm alias default node
Dans certaines distributions Linux, le nœud est installé sur /usr/bin/nodejs
et pas le /usr/bin/node
.
Ce que j'ai fait, c'est installer nodejs-legacy, et cela a résolu le problème. Il crée un lien symbolique à partir de /usr/bin/nodejs
à /usr/bin/node
.
Donc, ce que je recommande (comme la solution la plus simple) est d'installer nodejs-legacy
:
Sudo apt-get install nodejs-legacy
S'il y a un caractère ou un espace autre que les caractères anglais du nom d'utilisateur Windows, cela peut également être dû à cela.
Je parle de l'installation de packages globaux. Si vous installez un package sur un projet spécifique, cela peut également être dû au manque de package.json.