我不能在NodeJS中使用命令提示符使用npm install。我在运行npm install时得到这些错误:
module.js:339
throw err;
^
Error: Cannot find module 'semver'
at Function.Module._resolveFilename (module.js:337:15)
at Function.Module._load (module.js:287:25)
at Module.require (module.js:366:17)
at require (module.js:385:17)
at Object.<anonymous> (C:\Users\admin\AppData\Roaming\npm\node_modules\npm\l
ib\config\defaults.js:6:14)
at Module._compile (module.js:435:26)
at Object.Module._extensions..js (module.js:442:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:311:12)
at Module.require (module.js:366:17)
在Ubuntu上,如果你想通过默认的存储库使用apt来管理Node,最好同时安装nodejs和npm。
你正在使用的npm版本很有可能在某个特定的位置期望与你已经安装的Node JS版本不一致。如果只有一个版本的nodejs和一个版本的npm,并且它们都是使用默认存储库安装的,这应该可以完美地工作。
下面是我的最佳指导,让Node和npm使用Ubuntu的主要存储库工作:
sudo apt-get purge nodejs --auto-remove and sudo apt-get purge npm --auto-remove
whereis node: remove all the versions of node, one at a time. Repeat until this command returns a blank after node:.
sudo apt-get install nodejs
node --version: should return ... no such file or directory
nodejs --version: should return v1x.x.x. This is the version installed by apt. It will probably be less recent that the latest version available on the Node JS website.
sudo apt-get install npm
npm --version: it will use the nodejs installed by apt and work correctly.
我在AWS Linux上安装时也遇到了同样的问题。我必须用sudo安装它。因此,为了解决这个问题,我遵循了本文中的第3步(确保获得最新版本的node)
https://www.hostingadvice.com/how-to/update-node-js-latest-version/
wget https://nodejs.org/dist/vx.x.x/node-vx.x.x-linux-x64.tar.xz
tar -C /home/aUser/node --strip-components 1 -xJf node-vx.x.x-linux.x64.tar.xz
但是将它安装到用户的主目录/home/ auser /node。然后将该路径添加到我的path中。
导出路径= / home /用户/节点/ bin:美元的道路
在那之后,我就可以毫无问题地进行npm安装了。