Electron Packager - 为OSX设置应用程序图标&视窗

时间:2016-04-29 14:58:51

标签: electron

我正在用windows和OSX平台的电子打包器构建我的电子应用程序。

package.json:

"build": "electron-packager . $npm_package_productName --out=dist --ignore='^/dist$' --prune --all --icon=icon.icns"

我使用npm run build运行构建过程。

问题:

如何在package.json中使用电子打包器脚本来设置windows AND osx图标?

问题:

以上脚本仅为OSX设置应用程序图标 它没有设置Windows应用程序的图标(NPM抛出失败)。

解决方案:

我必须在我的OSX上安装葡萄酒。否则,无法使用--icon标记构建Windows exe。为什么?因为电子包装商使用node-rcedit,这需要葡萄酒。

在我的package.json中:

"pack:osx": "electron-packager . $npm_package_productName --out=dist/osx --platform=darwin --arch=x64 --icon=assets/build/osx/icon.icns && npm run codesign",
"pack:win32": "electron-packager . $npm_package_productName --out=dist/win --platform=win32 --arch=ia32",
"pack:win64": "electron-packager . $npm_package_productName --out=dist/win --platform=win32 --arch=x64 --version=0.36.2 app-version=1.0 --icon=assets/build/win/icon.ico",
"build": "npm run pack:osx && npm run pack:win32 && npm run pack:win64"

npm run build开始这个过程..

2 个答案:

答案 0 :(得分:7)

<强>解决方案:

我必须在我的OSX上安装葡萄酒。否则,无法使用--icon标记构建Windows exe。为什么?因为电子包装商使用node-rcedit,这需要葡萄酒。

在我的package.json中:

"pack:osx": "electron-packager . $npm_package_productName --out=dist/osx --platform=darwin --arch=x64 --icon=assets/build/osx/icon.icns && npm run codesign",
"pack:win32": "electron-packager . $npm_package_productName --out=dist/win --platform=win32 --arch=ia32",
"pack:win64": "electron-packager . $npm_package_productName --out=dist/win --platform=win32 --arch=x64 --version=0.36.2 app-version=1.0 --icon=assets/build/win/icon.ico",
"build": "npm run pack:osx && npm run pack:win32 && npm run pack:win64"

npm run build开始这个过程..

答案 1 :(得分:0)

天哪,这是否让我永远弄明白了。应用程序名称不能包含任何非法字符(无大写或连字符等)。奇怪的是,可执行文件名称会用这个“非法”字符正确生成,但图标将无法应用!

格式错误

electron-packager ./electron APPLICATION-NAME --overwrite --asar --electron-version=13.1.7 --platform=win32 --arch=x64 --prune=true --out=release-builds --icon=./icon.ico"

正确的格式

electron-packager ./electron applicationname --overwrite --asar --electron-version=13.1.7 --platform=win32 --arch=x64 --prune=true --out=release-builds --icon=./icon.ico"