如何修复问题以从早期版本的 Node.js 恢复工作



我刚刚将 (/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,这是一个非常小的节点版本管理器,可帮助您在不同版本的节点之间切换。

最新更新