应用构建器库.接口.平台特定构建选项
Electron-Builder / app-builder-lib / 平台特定构建选项
继承自¶
被扩展自¶
属性¶
appId?¶
readonlyoptionalappId:null|string
应用程序 ID。用于 MacOS 的 CFBundleIdentifier 以及 Windows 的应用程序用户模型 ID(仅限 NSIS 目标,不支持 Squirrel.Windows)。强烈建议设置显式 ID。
默认¶
com.electron.${name}
artifactName?¶
readonlyoptionalartifactName:null|string
artifact 文件名模板。默认为 ${productName}-${version}.${ext}(某些目标可能具有其他默认值,请参阅相应的选项)。
覆盖¶
TargetSpecificOptions.artifactName
asar?¶
readonlyoptionalasar:null|boolean|AsarOptions
是否将应用程序的源代码打包到归档文件中,使用 Electron 的归档格式。
必须解包的 Node 模块将自动检测,您无需显式设置 asarUnpack - 如果这不起作用,请提交 issue。
默认¶
true
asarUnpack?¶
readonlyoptionalasarUnpack:null|string|string[]
相对于应用程序目录的 glob 模式,用于指定创建 asar 归档时要解包的文件。
compression?¶
readonlyoptionalcompression:null|CompressionLevel
压缩级别。如果您想快速测试构建,store 可以显著减少构建时间。maximum 不会导致明显的尺寸差异,但会增加构建时间。
默认¶
normal
cscKeyPassword?¶
optionalcscKeyPassword:null|string
cscLink?¶
optionalcscLink:null|string
defaultArch?¶
readonlyoptionaldefaultArch:string
detectUpdateChannel?¶
readonlyoptionaldetectUpdateChannel:boolean
是否从应用程序版本预发布组件推断更新通道。例如,如果版本为 0.12.1-alpha.1,通道将设置为 alpha。否则为 latest。这不适用于 github 发布,github 发布将永远不会自动检测更新通道。
默认¶
true
disableDefaultIgnoredFiles?¶
optionaldisableDefaultIgnoredFiles:null|boolean
是否排除所有默认忽略的文件(https://builder.electron.js.cn/contents#files) 和选项。默认为 false。
默认¶
false
electronLanguages?¶
readonlyoptionalelectronLanguages:string|string[]
要保留的 electron 语言环境。默认情况下,所有 Electron 语言环境都按原样使用。
electronUpdaterCompatibility?¶
readonlyoptionalelectronUpdaterCompatibility:null|string
electron-updater 兼容性 semver 范围。
executableName?¶
readonlyoptionalexecutableName:null|string
可执行文件名。默认为 productName。
extraFiles?¶
optionalextraFiles:null|string|FileSet| (string|FileSet)[]
与 extraResources 相同,但复制到应用程序的内容目录中(MacOS 为 Contents,Linux 和 Windows 为根目录)。
继承自¶
extraResources?¶
optionalextraResources:null|string|FileSet| (string|FileSet)[]
相对于项目目录的 glob 模式,指定后,将匹配名称的文件或目录直接复制到应用程序的 resources 目录中(MacOS 为 Contents/Resources,Linux 和 Windows 为 resources)。
文件模式(以及对 from 和 to 字段的支持)与 files 相同。
继承自¶
FilesBuildOptions.extraResources
fileAssociations?¶
readonlyoptionalfileAssociations:FileAssociation|FileAssociation[]
文件关联。
files?¶
optionalfiles:null|string|FileSet| (string|FileSet)[]
相对于应用程序目录的 glob 模式,用于指定在复制文件以创建包时要包含的文件。
默认为
[
"**/*",
"!**/node_modules/*/{CHANGELOG.md,README.md,README,readme.md,readme}",
"!**/node_modules/*/{test,__tests__,tests,powered-test,example,examples}",
"!**/node_modules/*.d.ts",
"!**/node_modules/.bin",
"!**/*.{iml,o,hprof,orig,pyc,pyo,rbc,swp,csproj,sln,xproj}",
"!.editorconfig",
"!**/._*",
"!**/{.DS_Store,.git,.hg,.svn,CVS,RCS,SCCS,.gitignore,.gitattributes}",
"!**/{__pycache__,thumbs.db,.flowconfig,.idea,.vs,.nyc_output}",
"!**/{appveyor.yml,.travis.yml,circle.yml}",
"!**/{npm-debug.log,yarn.lock,.yarn-integrity,.yarn-metadata.json}"
]
在任何情况下都不会复制开发依赖项。您无需显式忽略它。默认情况下不忽略隐藏文件,但所有应忽略的文件默认情况下都会被忽略。
如果您的某些模式不是忽略(即不以 ! 开头),则默认模式 **/* 不会添加到您的自定义模式中。package.json 和 **/node_modules/**/* (仅生产依赖项将被复制)在任何情况下都会添加到您的自定义模式中。所有默认忽略项都会在任何情况下添加 - 如果您配置了自己的模式,则无需重复。
可以在平台选项中指定(例如,在 mac 中)。
您还可以通过使用 FileSet 对象而不是简单的 glob 模式来指定自定义源目录和目标目录。
[
{
"from": "path/to/source",
"to": "path/to/destination",
"filter": ["**/*", "!foo/*.js"]
}
]
您也可以在 from 和 to 字段中使用文件宏。from 和 to 可以是文件,您可以使用它在打包时重命名文件。
继承自¶
forceCodeSigning?¶
readonlyoptionalforceCodeSigning:boolean
如果应用程序未进行代码签名,是否失败。
generateUpdatesFilesForAllChannels?¶
readonlyoptionalgenerateUpdatesFilesForAllChannels:boolean
请参阅 使用通道构建和发布。
默认¶
false
icon?¶
readonlyoptionalicon:null|string
protocols?¶
URL 协议方案。
publish?¶
optionalpublish:Publish
发布者配置。有关更多信息,请参阅自动更新。
覆盖¶
releaseInfo?¶
readonlyoptionalreleaseInfo:ReleaseInfo
发布信息。旨在用于命令行。
-c.releaseInfo.releaseNotes="new features"
target?¶
readonlyoptionaltarget:null|string|TargetConfiguration| (string|TargetConfiguration)[]