![](/img/trans.png)
[英]NPM: cannot find module './lib' after upgrading to Node.js 5.0 on OS X
[英]node.js on Mac OS X npm “Error: No such module”
我从pkg安装程序安装了node.js v0.8.8并从源代码编译。 但是在尝试运行npm时出现以下错误。 任何帮助,将不胜感激。
> $ npm --help
>
> /usr/lib/node_modules/npm/lib/utils/config-defs.js:5 , stdio =
> process.binding("stdio")
> ^ Error: No such module
> at Object.<anonymous> (/usr/lib/node_modules/npm/lib/utils/config-defs.js:5:21)
> at Module._compile (module.js:449:26)
> at Object.Module._extensions..js (module.js:467:10)
> at Module.load (module.js:356:32)
> at Function.Module._load (module.js:312:12)
> at Module.require (module.js:362:17)
> at require (module.js:378:17)
> at Object.<anonymous> (/usr/lib/node_modules/npm/lib/utils/ini.js:43:18)
> at Module._compile (module.js:449:26)
> at Object.Module._extensions..js (module.js:467:10)
我有从Node.JS 0.4升级到0.8的完全相同的问题。 对我有用的是:
OSX Node.JS软件包安装程序错误地不会删除/ usr / bin中旧的0.4 npm安装,然后与/ usr / local / bin中的新0.8安装冲突。 它只是覆盖已有的东西。 我通过删除它来修复旧的,但为了确保,我决定干净安装会更好:
curl https://npmjs.org/install.sh | sudo clean=yes sh
最后一个问题是:在安装之后,即使which npm
正确返回/usr/local/bin/npm
,bash也会继续尝试从/ usr / bin执行。 这是因为在OSX上,bash已经散列了可执行文件名。 每次执行公共程序时,散列都会保存对PATH中所有目录的重复搜索。 命令行中的hash -r
处理了这个问题。
您最有可能以某种方式使用旧的NPM版本。 见: npm问题
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.