使 npm 脚本自动化电子包装
打包应用程序的一种便捷方法是在 packages.json
文件中编写脚本并使用 npm run
命令运行它们
{
"name": "AppName",
"productName": "AppName",
"version": "0.1.1",
"main": "main.js",
"devDependencies": {
"electron": "^1.6.6",
"electron-packager": "^8.7.0"
},
"scripts": {
"package-mac": "electron-packager . --overwrite --platform=darwin --arch=x64 --icon=images/icon.png --prune=true --out=release-builds",
"package-win": "electron-packager . --overwrite --platform=win32 --arch=ia32 --icon=images/icon.png --prune=true --out=release-builds",
"package-linux" : "electron-packager . --overwrite --platform=linux --arch=x64 --icon=images/icon.png --prune=true --out=release-builds"
}
}
要运行它们你只需写:
npm run package-mac
npm run package-win
npm run package-linux
命令标志的细分是:
electron-packager . // this runs the packager in the current folder
--overwrite // overwrite any previous build
--platform=darwin // platform for which the binaries should be created
--arch=x64 // the OS architecture
--icon=images/icon.png // the icon for the app executable
--prune=true // this does not copy your dev-dependencies that appear in your packages.json
--out=release-builds // the name of the folder were the binaries will be outputed
之前,运行脚本会将 devDependencies 更改为依赖项,因为 electron-packager 无法将 devDependencies 中的包绑定到应用程序中。在 packager.json 中,更改单词(如果它在那里或者如果在 npm install 中使用 –save-dev 安装软件包)devDependencies 仅限于依赖项。