模块版本不匹配.预计11,得1

Alf*_*red 45 node.js

Platform: Linux
Run Code Online (Sandbox Code Playgroud)

运行我的node.js程序时出现以下错误

Error: Module version mismatch. Expected 11, got 1.
Run Code Online (Sandbox Code Playgroud)

小智 54

你可能会给出这样的错误:

Error: Module version mismatch. Expected 11, got 1.
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/home/user/node_modules/xml2json/node_modules/node-expat/lib/node-expat.js:4:13)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
Run Code Online (Sandbox Code Playgroud)

然后,您可以注意到模块或某处的错误.

这是因为您已更新节点,您可能会重建上面找到的模块.

我通过重新安装(删除,然后安装)xml2json来撤销我的问题.

祝好运!

  • 澄清:`npm uninstall xml2json`然后再次运行`npm install`应该这样做. (4认同)
  • 我在这个问题上挣扎的时间最长,发现只需要`rm -fr node_modules && npm install`修复它 (4认同)

Alf*_*red 18

Platform: Linux
Run Code Online (Sandbox Code Playgroud)

为了将来在node.js v0.10.x(至少v0.10.0)中引用我得到了这个错误:

Error: Module version mismatch. Expected 11, got 1.
Run Code Online (Sandbox Code Playgroud)

为了解决这个问题,我找到了这个有趣的链接,并得到了Ben Noordhuis的一些帮助.以下命令帮助我摆脱了这个错误:

npm update
Run Code Online (Sandbox Code Playgroud)

  • 在更新之前,rm -rf node_modules (4认同)

rob*_*rit 11

当您使用一个版本的Node安装软件包,然后更改为其他版本时,通常会发生这种情况.更新节点或使用nvm切换到其他版本时,可能会发生这种情况.

如果您尝试以全局安装的节点作为root运行进程,但是您在自己的用户帐户中运行nvm管理的节点,也会发生这种情况.

要解决此问题,您只需使用正确版本的Node重新安装软件包即可.还要确保您在不同用户之间使用相同版本的Node.