xcodebuild命令无法生成iPA

时间:2018-03-14 07:09:25

标签: swift cocoapods xcodebuild

在xcode 9.2中,我使用自动签名生成存档,使用-allowProvisioningUpdates密钥通过xcodebuild命令生成开发人员证书和配置文件。

但是当通过xcodebuild命令生成iPA时,该存档会收到以下错误。

Details:  Unable to close provisioning ledger entry because not all of its subentries are closed
Object:   <IDEProvisioningLedgerEntry: 0x7f925ced3840>
Method:   -closeWithError:
Thread:   <NSThread: 0x7f925a734df0>{number = 4, name = (null)}
Please file a bug at http://bugreport.apple.com with this warning message and any useful information you can provide.

使用Xcodebuild命令生成存档

xcodebuild -exportArchive -archivePath '/path/to/archive/Test.xcarchive' -exportOptionsPlist '/path/to/exportOptions/ExportOptions.plist' -exportPath '/path/to/archive/' PRODUCT_BUNDLE_IDENTIFIER="bundle_id" DEVELOPMENT_TEAM="development_team_id" -allowProvisioningUpdates

导出plist选项详情:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>method</key>
    <string>ad-hoc</string>
    <key>signingCertificate</key>
    <string>iPhone Developer</string>
    <key>signingStyle</key>
    <string>automatic</string>
    <key>stripSwiftSymbols</key>
    <true/>
    <key>teamID</key>
    <string>TEAM_ID</string>
    <key>uploadBitcode</key>
    <true/>
    <key>uploadSymbols</key>
    <true/>
</dict>
</plist>

使用Xcode GUI,所有工作正常,开发人员,分发证书和配置文件都是生成

但是在终端中使用xcodebuild时,只有开发人员证书在归档时生成和开发人员配置文件。但是分发证书不是通过xcodbuild生成的。

任何人都可以帮助我!

2 个答案:

答案 0 :(得分:0)

在我的组织中,我们有不同的team_id用于开发和分发

如果您的情况相同,那么在xcodebuild命令中指定分发团队ID可以解决问题。

答案 1 :(得分:0)

我希望它有用。

  

xcodebuild存档-workspace“ xxx.xcworkspace”-方案“ xxx”-配置调试-archivePath build / xxx.xcarchive

     

xcodebuild -exportArchive -archivePath构建/xxx.xcarchive -exportPath构建/ xxx -exportOptionsPlist ExportOptions.plist

enter image description here