electron笔记
2018年07月29日

electron项目打包

安装

npm i electron-packager

打包

electron-packager . ProjectName --platform=win32 --arch=x64 --out ../path/of/output --app-version 1.0.0 --overwrite --icon=./path/of/icon.ico --electronVersion=3.0.0-beta.3 --asar --ignore=\"(dir1|dir2|file1|file2|other*|node_modules)\"

注意:electron-packager的第一个参数是项目所在的目录,即package.json文件所在的目录,后边 --asar参数也是根据这个目录进行打包的
electron版本名称可以在electron github的release里查看

命令又臭又长,为了便于以后编译,可以使用npm script,修改项目的package.json文件

vim package.json
{
    "name"    : "ProjectName",
    "version" : "1.0.0",
    "main"    : "main.js",
    "scripts":{
        "packager" : "electron-packager . ImageEditor-electron --platform=win32 --arch=x64 --out ../ImageEditor-electron-output --app-version 2.0.0 --overwrite --icon=./images/default.ico --electronVersion=3.0.0-beta.3 --asar"
    }
}

之后可以使用终端命令调用脚本

npm run packager

asar

安装

# 全局安装 asar 命令
npm i asar -g

打包 asar 文件

asar pack /path/of/app/directory app.asar

electron主程序会执行resources/app.asar文件,此名称固定

解压缩 asar 文件

asar extract app.asar /path/of/output/

解压缩到指定目录