Я успешно собираю и использую свои собственные модули узлов в своем электронном приложении.
Однако проблема в том, что: Electron Builder включает исходный код моего собственного модуля в dist \ win-unpacked \ resources \ app.asar.unpacked \ node_modules \ my_native_dep \ src и все ненужное оставлены кадрами cmake и встроенным инструментом сборки в dist \ win-unpacked \ resources \ app.asar.unpacked \ node_modules \ lauda_calc \ build.
Я использую cmake-js для сборки и просто включаю свою зависимость через ключ зависимости в package.json с URL-адресом для хранилища git, например:
"cmake-js": {
"runtime": "electron",
"runtimeVersion": "3.1.9"
},
"dependencies": {
"my_dep": "ssh://git@domain/my_dep.git"
Таким образом, cmake-js вызывается в клонированном каталоге node_module и создает двоичный файл. Команда require находит его через
"main": "build/Release/my_dep.node",
в package.json зависимости.
Есть ли какой-либо рекомендуемый способ изменить мой проект-потребитель или даже собственную нативную зависимость cmake-js, чтобы электрон, т.е. сборщик электронов, только упаковывал двоичный файл .node в дистрибутивный пакет или, по крайней мере, не с помощью исходный код?
Мой Electron-Builder.yml выглядит так:
icon: ./build/icon
asar: true
directories:
buildResources: dist-assets/
output: dist/
files:
- package.json
- init.js
- build/
- node_modules/
win:
target: nsis
linux:
target:
- deb
- AppImage