概要
これまでは electron
コマンドを使用して、Electron アプリを起動してきました。
今回は、Electron がインストールされていない環境でも Electron アプリを実行できるように、electron-builder
を使用して、バイナリ化する方法について解説します。
本記事で紹介するコードの全体は、以下を参照ください。
electron-examples/08_electron-use-electron-builder
手順
1. electron-builder
をインストールする
Electron アプリをバイナリ化する electron-builder
をインストールします。
npm install -D electron-builder
2. package.json
を編集する
npm run build
でビルドできるように、"build": "tsc -p . && electron-builder"
を追記します。
このコマンドを実行すると、まず Typescript のファイルをコンパイルし、./build
以下に結果が出力されます。これらのファイルを electron-builder
コマンドでビルドします。
electron-builder
のビルド設定は、build
フィールドに記述します。
ビルド対象のファイルを files
フィールドに指定します。今回は tsc -p .
により生成される ./build
以下のファイルを指定します。
"build": {
"files": [
"build/**/*",
"index.html"
]
},
3. ビルドする
ビルドを実行します。
npm run build
ビルドに成功すると、./dist
以下にパッケージ化されたバイナリが生成されます。
今回は Windows 上でビルドしたため、以下のようになっています。
electron-example Setup 1.0.0.exe
: アプリのインストーラー。インストールして実行する場合はこちらを使用する。win-unpacked
: インストール不要のポータブルアプリとして実行する場合はこちらを使用する
├── dist
| ├── builder-debug.yml
| ├── builder-effective-config.yaml
| ├── electron-example Setup 1.0.0.exe
| ├── electron-example Setup 1.0.0.exe.blockmap
| └── win-unpacked
├── index.html
├── main.ts
├── node_modules
├── package-lock.json
├── package.json
└── tsconfig.json
アイコンを設定する
アイコンに使用するファイルを用意して、./assets
以下に配置します。
├── assets
| └── sample.ico
├── index.html
├── main.ts
├── node_modules
├── package-lock.json
├── package.json
└── tsconfig.json
アイコンの設定情報を package.json
の build
フィールドに追加します。
アイコン設定は OS ごとに設定します。
"build": {
"files": [
"build/**/*"
],
"win": {
"icon": "./assets/sample.ico"
},
"mac": {
"icon": "./assets/sample.ico"
},
"linux": {
"icon": "./assets/sample.ico"
}
},
Windows において、すでにビルドしてあり、後からアイコンを変更した場合、エクスプローラーのキャッシュにより、アイコンが見かけ上変更されない場合があります。その場合でも、アプリを起動してアイコンが指定したものになっている場合は、正しく設定されています。キャッシュは Windows を再起動すると、削除されます。
コメント