LevelDOWN:测试时NODE_MODULE_VERSION错误,但未运行

时间:2017-10-24 19:44:24

标签: node.js npm mocha electron leveldb

我有一个.npmrc文件:

runtime = electron
target = 1.7.9
target_arch = x64
disturl = https://atom.io/download/atom-shell
build_from_source = true

一个package.json文件:

"scripts": {
    "start": "electron .",
    "test": "mocha"
}

npm install之后,当我使用npm start运行我的node.js脚本时,一切都按预期工作。但是,当我使用npm test时,我遇到了错误:

Uncaught LevelUPError: Failed to require LevelDOWN (The module '/Users/_me_/_project_/node_modules/leveldown/build/Release/leveldown.node' was compiled against a different Node.js version using NODE_MODULE_VERSION 54. This version of Node.js requires NODE_MODULE_VERSION 57. Please try re-compiling or re-installing the module (for instance, using 'npm rebuild' or 'npm install').). Try 'npm install leveldown' if it's missing

我的test.js文件使用了一小部分不需要电子的模块。

我在清除npm rebuild目录后尝试运行npm installnpm install leveldownnpm_modules,但错误仍然存​​在。

知道我为什么会看到这些错误或如何解决这个问题?

编辑:我能够用电子摩卡切换mocha并绕过错误。

1 个答案:

答案 0 :(得分:1)

  1. npm cache clean
  2. npm install
  3. 电子重建(需要npm安装电子重建)
  4. 我使用这些方法来解决问题