Node.js 模块版本不匹配,与 MacPorts 一起安装
Node.js module version mismatch, installed with MacPorts
在 OSX,我需要使用 macports,因为我 运行 遇到了 Brew 的问题。我卸载了自制程序包管理器并尝试让节点工作:
我全新安装了 nodejs 和 npm
sudo port install nodejs npm
这里只显示只安装了npm,没有安装其他模块。
$ ls /opt/local/lib/node_modules/
npm
正在尝试使节点包正常工作,使用 appdmg
进行测试
sudo npm install -g appdmg
这是一个神秘的错误。 (注意:它适用于 brew
的 NPM 版本,今天早上早些时候)
$ appdmg
module.js:460
return process.dlopen(module, path._makeLong(filename));
^
Error: Module version mismatch. Expected 46, got 47.
at Error (native)
at Object.Module._extensions..node (module.js:460:18)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:311:12)
at Module.require (module.js:366:17)
at require (module.js:385:17)
at Object.<anonymous> (/usr/local/lib/node_modules/appdmg/node_modules/macos-alias/lib/create.js:7:13)
at Module._compile (module.js:435:26)
at Object.Module._extensions..js (module.js:442:10)
at Module.load (module.js:356:32)
我使用的是 10.8.4 Mountain Lion。我尝试了最新版本的节点 (5.1) 和旧版本 (4.2) 并得到了相反的结果..
在 5.1 上,消息显示为:
Error: Module version mismatch. Expected 47, got 46.
在 4.2.2 我得到了
Error: Module version mismatch. Expected 46, got 47.
这让我相信有一些挥之不去的 brew 版本的节点。所以(在通过主网站上的节点 osx 打包程序安装安装节点后,不确定是否重要)我 运行 这个卸载脚本并修复了它,感谢@nicerobot 通过 https://gist.github.com/nicerobot/2697848 :
curl -ksO https://gist.githubusercontent.com/nicerobot/2697848/raw/uninstall-node.sh
chmod +x ./uninstall-node.sh
./uninstall-node.sh
rm uninstall-node.sh
npm uninstall lodash
npm install
我已经尝试了很多方法,但在我的情况下,它没有正确安装节点模块,所以我卸载然后重新安装它并且它有效!希望对你有帮助。
在 OSX,我需要使用 macports,因为我 运行 遇到了 Brew 的问题。我卸载了自制程序包管理器并尝试让节点工作:
我全新安装了 nodejs 和 npm
sudo port install nodejs npm
这里只显示只安装了npm,没有安装其他模块。
$ ls /opt/local/lib/node_modules/
npm
正在尝试使节点包正常工作,使用 appdmg
sudo npm install -g appdmg
这是一个神秘的错误。 (注意:它适用于 brew
的 NPM 版本,今天早上早些时候)
$ appdmg
module.js:460
return process.dlopen(module, path._makeLong(filename));
^
Error: Module version mismatch. Expected 46, got 47.
at Error (native)
at Object.Module._extensions..node (module.js:460:18)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:311:12)
at Module.require (module.js:366:17)
at require (module.js:385:17)
at Object.<anonymous> (/usr/local/lib/node_modules/appdmg/node_modules/macos-alias/lib/create.js:7:13)
at Module._compile (module.js:435:26)
at Object.Module._extensions..js (module.js:442:10)
at Module.load (module.js:356:32)
我使用的是 10.8.4 Mountain Lion。我尝试了最新版本的节点 (5.1) 和旧版本 (4.2) 并得到了相反的结果..
在 5.1 上,消息显示为:
Error: Module version mismatch. Expected 47, got 46.
在 4.2.2 我得到了
Error: Module version mismatch. Expected 46, got 47.
这让我相信有一些挥之不去的 brew 版本的节点。所以(在通过主网站上的节点 osx 打包程序安装安装节点后,不确定是否重要)我 运行 这个卸载脚本并修复了它,感谢@nicerobot 通过 https://gist.github.com/nicerobot/2697848 :
curl -ksO https://gist.githubusercontent.com/nicerobot/2697848/raw/uninstall-node.sh
chmod +x ./uninstall-node.sh
./uninstall-node.sh
rm uninstall-node.sh
npm uninstall lodash
npm install
我已经尝试了很多方法,但在我的情况下,它没有正确安装节点模块,所以我卸载然后重新安装它并且它有效!希望对你有帮助。