电子重建如何控制重建的node_module_version?

时间:2019-10-30 16:24:28

标签: node.js electron node-modules electron-builder node-serialport

我正在测试Electron和 serialport 模块的使用情况……

当我运行electron .命令时,出现此错误:

The module '…/teste3/node_modules/@serialport/bindings/build/Release/bindings.node' 
   was compiled against a different Node.js version using NODE_MODULE_VERSION 79. 
   This version of Node.js requires NODE_MODULE_VERSION 73.

我运行了rebuild命令(node_modules / .bin / electron-rebuild),然后将79降级为50,并且随之而来的是我的问题。

我尝试更改 node 版本并进行重建,但50个仍然相同。

第二个NODE_MODULE_VERSION(73)基于Electron版本。我更改了Electron版本,并对其进行了重新构建。

第一个NODE_MODULE_VERSION(79)基于串行端口的构建(我认为)。

我的问题是:

  • 我的第一个NODE_MODULE_VERSION(79)版本基于什么?
  • 为什么将其降级到50,而不降级到其他任何版本?
  • 什么告诉Electron-rebuild应该使用哪个NODE_MODULE_VERSION?
  • 这是它的工作方式还是我完全迷失了?

2 个答案:

答案 0 :(得分:0)

尝试以下命令

cd node_modules / path_to_module && node-gyp重建--target = 4.2.0 --arch = x64 --dist-url = https://atom.io/download/electron,用电子版本的模块路径代替。 / p>

答案 1 :(得分:0)

Sharvin K,谢谢您的答复。

不起作用:

gyp:尝试加载binding.gyp时,未找到binding.gyp(cwd:/ home / kevin / Documentos / projetos / testeserial / node_modules / @ serialport) 糟糕!配置错误 糟糕!堆栈错误:gyp失败,退出代码:1 糟糕!堆栈在ChildProcess.onCpExit(/usr/share/node-gyp/lib/configure.js:340:16) 糟糕!堆叠在generateTwo(events.js:126:13) 糟糕!堆栈在ChildProcess.emit(events.js:214:7) 糟糕!堆栈位于Process.ChildProcess._handle.onexit(内部/child_process.js:198:12) 糟糕!系统Linux 5.0.0-32-通用 糟糕!命令“ / usr / bin / node”“ / usr / bin / node-gyp”“重建”“ --target = 4.2.0”“ --arch = x64”“ --dist-url = https://atom.io/download/electron ” 糟糕! cwd / home / kevin / Documentos / projetos / testeserial / node_modules / @ serialport 糟糕!节点-v v8.10.0 糟糕!节点gyp -v v3.6.2 糟糕!不好

您能告诉我该命令的作用吗?

“ path_to_module”在哪里,我放了“ @serialpor”,对吗?