【发布时间】:2019-11-27 03:17:12
【问题描述】:
我已经构建了一个电子应用程序,这必须能够将电子文件版本,产品版本和版权更改为我在生成包时指定的值。我为 windows 和 linux 使用电子包生成包。如何做到这一点?
我看到 npm 包 rcedit 以某种方式链接到这个,我不知道如何使用这个包?我希望在电子封装期间设置这些值。
【问题讨论】:
我已经构建了一个电子应用程序,这必须能够将电子文件版本,产品版本和版权更改为我在生成包时指定的值。我为 windows 和 linux 使用电子包生成包。如何做到这一点?
我看到 npm 包 rcedit 以某种方式链接到这个,我不知道如何使用这个包?我希望在电子封装期间设置这些值。
【问题讨论】:
假设您正在使用Electron Packager 命令行工具来打包您的应用程序,请参阅其API Documentation 页面以了解所有可用选项:
buildVersion
字符串
应用程序的构建版本。默认值为 应用版本。映射到 Windows 上的
FileVersion元数据属性,以及CFBundleVersion在 macOS 上。应用程序版本
字符串
应用程序的发布版本。默认情况下
version使用了package.json中的属性,但可以用 这个论点。如果两者都没有提供,Electron 的版本将 使用。映射到 Windows 上的ProductVersion元数据属性,以及CFBundleShortVersionString在 macOS 上。应用版权
字符串
应用的可读版权行。映射到
LegalCopyrightWindows 上的元数据属性,以及NSHumanReadableCopyright在 macOS 上。
要实现您的要求,您可以将以下选项添加到您的 package.json 文件中的相关 electron-packager 命令:
--buildVersion='Build 42'--appVersion='Version 3.14'--appCopyright='My Own Private Copyright'【讨论】:
FileDescription;相关选项可能是win32metadata,但我自己无法测试,因为我在 macOS 上...
--win32metadata.FileDescription='My App Description'.
app.getVersion() 获取版本,但不能获取 buildVersion。