我正忙着构建将构建iOS应用程序的Jenkins构建。我已成功使用此命令创建存档:
xcodebuild archive -archivePath build/app.xcarchive
现在我正在尝试导出该存档并指定输出文件名,但无法使其工作。在下面的示例中,我想要一个名为app.ipa的输出文件,但是我得到的是一个名为app.ipa的文件夹,名称为.ipa
的ipa文件xcrun xcodebuild -exportArchive -exportPath build/app.ipa -archivePath build/app.xcarchive/ -exportOptionsPlist exportOptions.plist
Outputs a file /build/app.ipa/<projectname>.ipa
XCodeBuild的Apples文档说您可以指定输出路径,包括文件名:
-exportPath目标路径 指定导出产品的目标,包括导出文件的名称。
这样做的原因是我希望保持构建通用,这样我通过它发送的任何项目都会产生app.ipa而不需要跟踪项目名称和不同的输出文件等。
答案 0 :(得分:6)
答案 1 :(得分:5)
ArchiveAction 标记可以具有属性 customArchiveName ,可以将其设置为您喜欢的任何内容。
<ArchiveAction
buildConfiguration = "AdHoc_Example"
customArchiveName = "app"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>
当您通过app.ipa
导出存档时,这将始终为您-exportOptionsPlist
。
答案 2 :(得分:2)
如果您执行xcodebuild --help
,则说:
-exportPath PATH specifies the destination for the product exported from an archive
嗯。
要执行解决方法,您可以在以后重命名文件。
mv "oldname" "newname"
答案 3 :(得分:0)
您还可以编辑您的 Info.plist:
<key>CFBundleName</key>
<string>app</string>
会给 ipa.app
如果省略它,它将具有您的 .xcarchive
文件的名称(默认为方案名称)