我刚刚将 (/usr/local/bin/(node 升级到 5.6.0,由 nodejs.org 中的 .pkg 包安装,并且正在尝试移植一个较旧的项目以使用当前 Node。
我希望需要从我的代码中解决多个问题,但目前(可能过时的(调用在不是我自己的代码上出错。我最好的猜测是我得到了两个节点安装的不兼容混合;如果是这样,完全卸载两个版本然后安装 5.6.0 的最佳方法是什么?
我看到的错误消息是:
Inner Sanctum ~/archive/ppenmatometer $/usr/local/bin/node bin/www模数.js:440 return process.dlopen(module, path._makeLong(filename((; ^错误:模块版本不匹配。预计47,得到44。 错误(本机( 在Object.Module._extensions..节点(模块.js:440:18( at Module.load (module.js:357:32( 在Function.Module._load(模块.js:314:12( at Module.require (module.js:367:17( 在需要(内部/模块.js:16:19( 在对象。(/Users/christos/archive/ppenmatometer/node_modules/scrypt/index.js:3:20( 在Module._compile(模块.js:413:34( 在Object.Module._extensions..JS(模块.js:422:10( at Module.load (module.js:357:32(
我可以/应该做些什么来解决这个问题并继续移植我的代码的下一步?
谢谢
编辑:根据我读过的其他问题,似乎是node_modules文件夹中脚本内VERSION_STRING常量的问题。尝试删除整个node_modules文件夹,并使用当前安装的新节点版本运行npm install
以获取新的模块安装。
另外,我建议签出n,这是一个非常小的节点版本管理器,可帮助您在不同版本的节点之间切换。