我在试着安装expressjs。
我在这里一直收到这个错误:
node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: No such module
at Object.<anonymous> (/usr/share/npm/lib/utils/output.js:8:21)
at Module._compile (module.js:432:26)
at Object..js (module.js:450:10)
at Module.load (module.js:351:31)
at Function._load (module.js:310:12)
at Module.require (module.js:357:17)
at require (module.js:368:17)
at Object.<anonymous> (/usr/share/npm/lib/utils/log.js:21:14)
at Module._compile (module.js:432:26)
at Object..js (module.js:450:10)你知道为什么会发生这个错误吗?我安装了npm,似乎没有任何问题。
这是我尝试用来安装express js的命令:
sudo npm install express -g我也尝试了expressjs website上的指南。抱歉,是我的错。dint安装nodejs的最新版本
发布于 2012-04-13 23:34:36
如果您使用的是较新版本的Node.js和较旧版本的NPM,则会发生这种情况。听起来你刚刚更新了Node.js,所以现在你需要更新NPM了。
发布于 2016-02-11 13:05:30
您很可能以某种方式使用了旧的NPM版本。
做
node --version
npm --version此外,在Ubuntu中有两个包具有相似的名称,node和nodejs。
Fedora也遵循类似的包命名方案。因此,nodejs中的二进制文件必须从原始节点重命名为nodejs。然而,从技术上讲,这是不正确的:大多数nodejs程序(以及随npm一起安装的库)都假定节点二进制文件是node。如果你想解决这个问题,最简单的方法就是将两者符号链接在一起。如果您采用此方法,请不要安装处理Amateur Packet Radio内容的node包。
sudo ln -s /usr/bin/nodejs /usr/local/bin/node或者,在node的情况下,我建议使用n,而不是安装link。只需安装npm (它将安装node),然后删除npm,然后告诉apt清理它。为此,只需运行以下命令
sudo apt-get install npm
sudo npm install -g n
sudo n latest
sudo apt-get --purge remove npm
sudo apt-get autoremove还有其他的二进制发行版管理器,甚至可以从nvm这样的shell脚本中工作,但我个人更喜欢n。可以将n看作是一个apt,只有一件事:它安装到/usr/local/bin中的节点二进制文件。
https://stackoverflow.com/questions/10027963
复制相似问题