尝试使用electron-webpack链接本机模块

时间:2017-10-25 10:58:28

标签: webpack electron-builder native-module

我使用v8.h标头在c ++中编写了一个本机模块,我想在我的电子应用程序中导入它。

模块工作正常。我在它自己的文件夹中编译它,然后我将.node复制粘贴到这个样板https://github.com/szwacz/electron-boilerplate中,我需要使用RecyclerView's包。

我想用这个https://github.com/electron-userland/electron-webpack-quick-start作为构建我的电子申请的起点。主要有两个原因:它是推荐的方式,它承诺为macos,linux和windows打包你的应用程序。我将包含源代码的文件夹复制到项目的根文件夹中,我将bindings文件和bindings.gyp添加到根文件夹中的"nodeGypRebuild": "true",。该模块使用package.json进行编译,但如果我尝试在yarn install中导入import {Module} from 'MyModule'并运行src/main/index.js,则输出为

yarn dev

在搜索问题时,我登陆https://github.com/chentsulin/electron-react-boilerplate/wiki/Module-Structure----Two-package.json-Structure,现在我更加困惑,因为Module not found: Error: Can't resolve 'MyModule' in '/Users/BiA/Src/WebPack/src/main'

中没有app/个文件夹

有人能帮助我找到退出这个死胡同的方法吗?它是否存在涵盖此案例的文档?即使是一个工作的例子,比如我可以学习这样做的开源项目也会有所帮助。

编辑:为了更好地理解我创建一个简单的git存储库的问题:https://github.com/BiancoA/electron-webpack-quick-start-nm

1 个答案:

答案 0 :(得分:1)

我使用yarn link找到了问题的解决方案:https://yarnpkg.com/lang/en/docs/cli/link/

这里我保存了工作项目: https://github.com/BiancoA/electron-webpack-quick-start-nm

如果还有其他可能的方法,我会很乐意学习它们