web-dev-qa-db-ja.com

NPM:そのようなファイルまたはディレクトリはありません

Ubuntu 16.04を使用しています。古いバージョンをインストールするためにNPMを削除しました。 (使用したコマンドを正確に指定することはできません)。もうインストールできません。 npm -v出力:bash: /usr/bin/npm: /usr/bin/nodejs: bad interpreter: No such file or directorywhich npm出力:/usr/bin/npm

curl -L http://npmjs.org/install.sh | Sudo sh

出力:

`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:解決しました。 node/nodejs/npmを完全に削除し、すべての相対フォルダーを削除してから、NVMを介して再インストールすると役立ちます。 https://www.digitalocean.com/community/tutorials/how-to-install-node-js-with-nvm-node-version-manager-on-a-vps

5
Nikita Yunoshev

Nodejsをインストールするより良い方法は、nvmを使用することです。ここでは、マシンに複数のバージョンのnodejsをインストール/使用できます。

https://github.com/creationix/nvm

その後

nvm install $vesionNo

nvm use $versionNO

// for default 

nvm alias default node
4

一部のLinuxディストリビューションでは、ノードは/usr/bin/nodejsではなく/usr/bin/nodeにインストールされます。

私がしたことは、nodejs-legacyをインストールすることであり、それは問題を解決しました。 /usr/bin/nodejsから/usr/bin/nodeへのシンボリックリンクを作成します。

したがって、(最も簡単な解決策として)私が推奨するのは、nodejs-legacyをインストールすることです。

Sudo apt-get install nodejs-legacy
2
Víctor López

Windowsのユーザー名に英字以外の文字やスペースがある場合もこれが原因と考えられます。

グローバルパッケージのインストールについて話している。特定のプロジェクトにパッケージをインストールする場合は、package.jsonの不足が原因である可能性もあります。

0
İsmail DENİZ