从源代码构建iook(使用电子版4.0.0和vue)

时间:2019-02-11 10:51:22

标签: vue.js electron

我使用vue-cli创建了一个vue应用,然后我通过一个名为electron(4.0.0)的插件添加了vue-cli-plugin-electron-builder。一切正常,并且可以正常工作。

问题出在iohook上,正如其documentation所述,它具有电子ABI <= 57的预构建版本(实际上是<= 64)。似乎在我的项目中,它会自动下载并使用electron ABI(64)(已通过node-abi验证的electron(3.0.0)

electron(4.0.3/4)ABI(69)(不受支持)。从这些情况来看,我还考虑了electron 4.0.0也有ABI(69)

iohook需要我确实指定的package.json [arch类型等。]中指定的内容。

iohook也希望我npm run build,但到目前为止,它至今还没有生成任何构建文件夹。

我的解决方案是:

回到电子3.0.0

  1. electron 3.0.0electron 4.0.x之间有什么区别

从源代码手动构建iohook

  1. 他们关于手动构建的文档似乎很差,至少对我而言。我实际上该怎么做?它总是使我出错/对lib目录和npm run compile中的cd说,这是行不通的,因为arch type doesn't match

到目前为止,我想手动构建iohook

更新 我尝试使用electron 3.0.0(准系统),但仍在抛出:

Error: Cannot find module 'F:\DOCS\OneDrive\Programming\NODE\type_analysis\dist_electron\builds\electron-v64-win32-x64\build\Release\iohook.node' at webpackEmptyContext (webpack:///./node_modules/iohook_sync?:2:10) at eval (webpack:///./node_modules/iohook/index.js?:10:80) at Object../node_modules/iohook/index.js (F:\DOCS\OneDrive\Programming\NODE\type_analysis\dist_electron\index.js:252:1) at __webpack_require__ (F:\DOCS\OneDrive\Programming\NODE\type_analysis\dist_electron\index.js:20:30) at eval (webpack:///./src/background.js?:15:16) at Module../src/background.js (F:\DOCS\OneDrive\Programming\NODE\type_analysis\dist_electron\index.js:1395:1) at __webpack_require__ (F:\DOCS\OneDrive\Programming\NODE\type_analysis\dist_electron\index.js:20:30) at eval (webpack:///multi_./src/background.js?:1:18) at Object.0 (F:\DOCS\OneDrive\Programming\NODE\type_analysis\dist_electron\index.js:1406:1) at __webpack_require__ (F:\DOCS\OneDrive\Programming\NODE\type_analysis\dist_electron\index.js:20:30)

更新2 也不与electron 2.0.0一起使用... 我还在package.json

中添加了cmake-js

"cmake-js": { "runtime": "electron", "runtimeVersion": "2.0.0" }

也尝试过electron-rebuild -f -w iohook,也没有解决问题

1 个答案:

答案 0 :(得分:0)

现在支持Electron v2 +(尝试使用iohook 0.4+版本)。目前,我们正在开发对电子4的Win32 / 64支持。所有其他平台都很好。您可以在此处进行调试:https://github.com/wilix-team/iohook/pull/157