【问题标题】:Getting "ARCHIVE FAILED" error while doing archive process using command "xcodebuild archive \"使用命令“xcodebuild archive \”进行归档过程时出现“ARCHIVE FAILED”错误
【发布时间】:2020-05-15 20:48:39
【问题描述】:

我有一个 Swift 语言的 iOS 项目,我必须在终端上使用命令创建存档和 .ipa。

我正在使用 Github 操作在试飞中上传 iOS 版本。 我正在遵循此链接中提到的所有说明:

https://zach.codes/ios-builds-using-github-actions-without-fastlane/#install-gpg

当我在 iMac 系统的终端上点击这个命令时:

xcodebuild archive \
            -workspace GitHubActions.xcworkspace \
            -scheme GitHubActions \              
            -sdk iphoneos12.4 \            
            -configuration Release \       
            -archivePath $PWD/build/GitHubActions.xcarchive \
            IPHONEOS_DEPLOYMENT_TARGET=9.0
            PROVISIONING_PROFILE="<UUID>" \
            CODE_SIGN_IDENTITY="<Code_Sign_IDENTITY>"

我得到了成功响应:

** ARCHIVE SUCCEEDED **

但是当我使用这个命令连接我的 iMac 时:

ssh <system_username>@192.168.1.100

我连接成功,然后我已经使用“cd”命令到达项目文件夹。

然后当我点击相同的命令时:

xcodebuild archive \
                -workspace GitHubActions.xcworkspace \
                -scheme GitHubActions \              
                -sdk iphoneos12.4 \            
                -configuration Release \       
                -archivePath $PWD/build/GitHubActions.xcarchive \
                IPHONEOS_DEPLOYMENT_TARGET=9.0
                PROVISIONING_PROFILE="<UUID>" \
                CODE_SIGN_IDENTITY="<Code_Sign_IDENTITY>"

但是当我在另一个系统上使用这个命令时,我得到了这个错误:

** ARCHIVE FAILED **


The following build commands failed:
    PhaseScriptExecution [CP]\ Embed\ Pods\ Frameworks /Users/webcubator/Library/Developer/Xcode/DerivedData/GitHubActions-djymswinwihmdobtcnvllpcfgvht/Build/Intermediates.noindex/ArchiveIntermediates/GitHubActions/IntermediateBuildFilesPath/GitHubActions.build/Release-iphoneos/GitHubActions.build/Script-678E7AE3D9F6AC7BF3ABDA96.sh
(1 failure)

我到底做错了什么。无法理解。从另一个系统访问 iMac 时显示此错误。

【问题讨论】:

    标签: ios ssh archive github-actions


    【解决方案1】:

    经过大量搜索,我终于找到了无法使用其他系统远程连接提交的问题的解决方案。

    钥匙串处理您的密钥和证书(由代码签名用于对您的构建进行签名)对于远程用户来说开箱即用是不可用的。需要先解锁!!!

    要了解系统上可用的钥匙串,只需在终端上输入:

    security list-keychains
    

    你应该看到类似的东西:

    "/Users/'YOURUSER'/Library/Keychains/login.keychain-db"
    "/Library/Keychains/System.keychain"
    

    你猜对了,你必须解锁你用户的钥匙串!只需运行这个:

    security unlock-keychain -p 'USER_PASSWORD' 'PATH_TO_USER_KEYCHAIN'
    

    【讨论】:

      猜你喜欢
      • 2014-10-01
      • 2022-06-25
      • 1970-01-01
      • 2020-05-25
      • 2018-12-05
      • 2013-09-13
      • 2012-05-28
      • 2013-03-12
      • 1970-01-01
      相关资源
      最近更新 更多