私はwebpackを使用してビルドしているオープンソースの電子プロジェクトに取り組んでいます。私のプロジェクトの1つの要件は、ネイティブモジュールとして構築する必要があるnodegitライブラリを使用することです。電子プロジェクトでネイティブnodejsモジュールをインポートできません
ネイティブのモジュールと電子を使って作業するときは、従来のアドバイスと同じように見えます。すなわち、私はrun electron-rebuildであり、.node
ファイルのインポートをキャッチするためにconfigured the source package to useと最後にhave configured node-loaderを持っています。
残念ながら、私はモジュールを含めるために行くとき、私はこのエラーで終わる:
ERROR in ./node_modules/nodegit/dist/nodegit.js
Module not found: Error: Can't resolve '../build/Debug/nodegit.node' in
'C:\Users\atrauzzi\Development\atrauzzi\gerty\node_modules\nodegit\dist'
@ ./node_modules/nodegit/dist/nodegit.js 18:11-49
@ ./src/Layer/Domain/Thunktor/Git/CloneGitRepository.ts
@ ./src/Layer/Gerty/Component/Repository/AddGitHubRepository.tsx
@ ./src/Layer/Gerty/Component/Repository/AddRepository.tsx
@ ./src/Layer/Gerty/Component/Workspace.tsx
@ ./src/Layer/Gerty/Component/App.tsx
@ ./src/Layer/Gerty/GertyServiceProvider.ts
@ ./src/Bundle/GertyElectron.ts
私はそれがこの時点で不審だ見ることができる唯一のことは、私は、モジュールを再構築すると電子で動作するということですインポートがDebug
を探しているように見えるとき、私は、Release
ディレクトリを取得:
は、これは赤ニシンしかしas nodegit is written to try Debug
as a fallback after Release
has failedである可能性があります。
一般的な質問は、「このネイティブモジュールを自分のプロジェクトでどのように働かせるか」です。
また、私の問題はライブラリ自体とは無関係であるかもしれないし、電子でネイティブモジュールの戦闘に疲れたベテランもいると思うかもしれませんが、私はSOが良い場所になると考えました同じように。