使用电子生成器设置电子图标
Posted
技术标签:
【中文标题】使用电子生成器设置电子图标【英文标题】:Set Electron favicon with electron-builder 【发布时间】:2018-04-26 01:26:33 【问题描述】:我想在我的 Electron 应用中设置新的图标,并在构建我的应用时替换默认的 Electron 图标。
我使用electron-builder
包。在文档中,我看到了图标 need to be placed in the build directory.
所以:
当我构建我的应用程序时,我收到了这条消息:
Application icon is not set, default Electron icon will be used
.
谁能帮帮我?
我的package.json
的一部分:
"scripts":
"postinstall": "install-app-deps && npmpd",
"pre-build": "./node_modules/.bin/electron-rebuild",
"build-bcrypt": "npm rebuild bcrypt --update-binary",
"develop": "npm run private:compile -- --source-maps true && run-p -r private:watch private:serve",
"test": "mocha -R spec --compilers js:babel-core/register test/**/*.spec.js",
"lint": "eslint --no-ignore scripts app test *.js",
"pack": "run-s private:clean private:compile private:build:all",
"pack:mac": "run-s private:clean private:compile private:build:mac",
"pack:win": "run-s private:clean private:compile private:build:win",
"pack:linux": "run-s private:clean private:compile private:build:linux",
"private:build:all": "build -mwl",
"private:build:mac": "build --mac",
"private:build:win": "build --win",
"private:build:linux": "build --linux",
"private:watch": "npm run private:compile -- --source-maps true --watch --skip-initial-build",
"private:serve": "babel-node scripts/serve.js",
"private:compile": "babel app/ --copy-files --out-dir build",
"private:clean": "rimraf build",
"private:cleandb": "rm -rf ./categories ./presentations ./slides ./users"
,
"build":
"win":
"icon": "build/icon.ico"
【问题讨论】:
【参考方案1】:在package.json
中,win
键下,还需要指定图标路径:
"build":
"win":
"icon": "build/app.ico"
【讨论】:
嗨!同样的结果 :( 我在第一篇文章中添加了我的package.json
的一部分。感谢您的帮助!
@StéphaneRICHIN,它应该在“build”键下 - 我已经更新了我的示例
是的,我刚看到。经过测试,结果相同:Application icon is not set, default Electron icon will be used
(我已经更新了我的第一篇文章)
@StéphaneRICHIN,路径正确吗?它应该是相对于 package.json
是的,路径是正确的。在开发模式下,我有我的图标 :(【参考方案2】:
遇到类似问题,我在构建中添加了目录
"build":
"directories":
"buildResources": "resources"
在目录文件夹中我有我的 icon.ico 文件
【讨论】:
【参考方案3】:我遇到了同样的问题,因为我也使用build
目录作为我的输出,这是我的配置:
"build":
"directories":
"output": "build"
,
"mac":
"icon": "build/logo.icns",
,
"win":
"icon": "build/logo.png"
,
而不是指定您的目录,例如./logo.png
,这会使电子显示default Electron icon is used reason=application icon is not set
【讨论】:
【参考方案4】:我设法在 package.json 中使用以下脚本在 Windows 上显示了我的图标:
"package-win": "electron-packager . --overwrite --asar=true --platform=win32 --arch=ia32 --icon=assets/icons/win/icon.ico --prune=true --out=release-builds --version-string.CompanyName=Company --version-string.FileDescription=CE --version-string.ProductName=\"Product\""
【讨论】:
这是给电子打包器的,不是电子生成器以上是关于使用电子生成器设置电子图标的主要内容,如果未能解决你的问题,请参考以下文章