Попытка связать нативный модуль с помощью electronic-webpack

Я написал собственный модуль на C++, используя заголовки v8.h, и я хочу импортировать его в свое электронное приложение.

Модуль работает отлично. Я компилирую его в его собственную папку, затем копирую и вставляю.node в этот шаблон https://github.com/szwacz/electron-boilerplate и мне требуется это с помощью bindings пакет.

Я хотел бы использовать этот https://github.com/electron-userland/electron-webpack-quick-start в качестве отправной точки для создания моего электронного приложения. Главным образом по двум причинам: это рекомендуемый способ, и он обещает упаковать ваше приложение для macos, linux и windows. Я скопировал папку, содержащую исходный код, в корневую папку проекта, я добавил bindings.gyp файл и "nodeGypRebuild": "true", к package.json в корневой папке. Модуль скомпилирован с yarn install но если я попытаюсь импортировать его import {Module} from 'MyModule' в src/main/index.js и беги yarn dev выход

Module not found: Error: Can't resolve 'MyModule' in '/Users/BiA/Src/WebPack/src/main'

Погугливая проблему, я приземлился здесь https://github.com/chentsulin/electron-react-boilerplate/wiki/Module-Structure----Two-package.json-Structure и теперь я еще более запутался, так как есть нет app/ папка в electron-webpack-quick-start

Может ли кто-нибудь помочь мне найти выход из этого тупика? Существует ли документация, которая охватывает этот случай? Даже рабочий пример, такой как проект с открытым исходным кодом, где я могу научиться делать это, помог бы.

редактировать: чтобы лучше понять проблему, я создал простой репозиторий git: https://github.com/BiancoA/electron-webpack-quick-start-nm

1 ответ

Решение

Я нашел решение проблемы с помощью yarn link: https://yarnpkg.com/lang/en/docs/cli/link/

здесь я сохранил рабочий проект: https://github.com/BiancoA/electron-webpack-quick-start-nm

Если есть другие возможные способы, я буду рад узнать их

Другие вопросы по тегам