環境 Windows10, Electoron8.5.5, electorn-builder 22.14.13
src ディレクトリ以下に書いたソースを webpack で dist ディレクトリ以下に出力する設定で Electron アプリケーションを作成していました。
app ├─dist ├─node_modules └─src ├─main ├─preload └─renderer
dist ディレクトリ直下に index.html
main.js
preload.js
renderer.js
があります。
問題は、electron-builder は main.js
が app ディレクトリ直下にないと main.js だと認識してくれないことです。
dist 以下にmain.js
を置いて electoron-builder を起動すると以下のエラーが発生します。
main.js
を app 直下に移動させるとこのエラーは発生しません。
D:\my\mirror\electron\gakb-jra\node_modules\app-builder-lib\src\asar\asarFileChecker.ts:7 return new Error(`${messagePrefix} "${relativeFile}" in the "${asarFile}" ${text}`) ^ Error: Application entry file "main.js" in the "D:\my\mirror\electron\gakb-jra\__build\win-ia32-unpacked\resources\app.asar" does not exist. Seems like a wrong configuration. at error (D:\my\mirror\electron\gakb-jra\node_modules\app-builder-lib\src\asar\asarFileChecker.ts:7:12) at Object.checkFileInArchive (D:\my\mirror\electron\gakb-jra\node_modules\app-builder-lib\src\asar\asarFileChecker.ts:31:11) at WinPackager.checkFileInPackage (D:\my\mirror\electron\gakb-jra\node_modules\app-builder-lib\src\platformPackager.ts:501:7) at WinPackager.sanityCheckPackage (D:\my\mirror\electron\gakb-jra\node_modules\app-builder-lib\src\platformPackager.ts:549:5) at WinPackager.doPack (D:\my\mirror\electron\gakb-jra\node_modules\app-builder-lib\src\platformPackager.ts:310:5) at WinPackager.pack (D:\my\mirror\electron\gakb-jra\node_modules\app-builder-lib\src\platformPackager.ts:136:5) at Packager.doBuild (D:\my\mirror\electron\gakb-jra\node_modules\app-builder-lib\src\packager.ts:441:9) at Object.executeFinally (D:\my\mirror\electron\gakb-jra\node_modules\builder-util\src\promise.ts:12:14) at Packager._build (D:\my\mirror\electron\gakb-jra\node_modules\app-builder-lib\src\packager.ts:376:31) at Packager.build (D:\my\mirror\electron\gakb-jra\node_modules\app-builder-lib\src\packager.ts:337:12) at Object.executeFinally (D:\my\mirror\electron\gakb-jra\node_modules\builder-util\src\promise.ts:12:14)
これの回避策はございますか?
なお、electoron-builder に使った build スクリプトは以下になります。
$ node build-win.js
で使用します。
javascript:build
1const { build } = require('electron-builder'); 2 3build({ 4 config: { 5 appId: 'jp.electron.myapp', 6 productName: 'myapp', 7 directories: { 8 output: "__build" // webpack が dist ディレクトリを使っているので変更 9 }, 10 extends: null, 11 files: [ 12 "./main.js", // ルート直下の main.js をビルドさせるときにのみ必要 13 "./dist/**/*.js", 14 "./dist/index.html", 15 ], 16 win: { 17 target: { 18 target: 'zip', 19 arch: [ 20 //'x64', 21 'ia32', 22 ], 23 }, 24 }, 25 }, 26});
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。