You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Codemagic原生iOS项目构建.ipa失败 退出状态码66问题求助

Codemagic构建iOS原生项目IPA失败问题描述

我在Codemagic上构建原生iOS项目的.ipa文件时出现失败,报错信息如下:

Archive
执行xcodebuild -project . -scheme Optivio -archivePath build/ios/xcarchive/_ijalmu93.xcarchive archive COMPILER_INDEX_STORE_ENABLE=NO
归档失败
构建失败 :| 第7步Build .ipa脚本退出,状态码为66

我yaml文件中构建ipa的对应代码如下:

xcode-project build-ipa --project "$XCODE_PROJECT" --scheme "$XCODE_SCHEME"

我的项目没有workspace,仅存在project文件,在本地Xcode中执行归档操作可成功完成。
Codemagic运行截图:
Codemagic运行截图

完整yaml文件内容如下:

workflows:
ios-testApp:
  name: ios_testApp
  environment:
    vars:
      XCODE_PROJECT: "TestApp.xcodeproj" # <-- 请在此处填写你的project文件名
      XCODE_SCHEME: "TestApp" # <-- 请在此处填写你的scheme名称
      # 配置手动签名所需的环境变量
      CM_CERTIFICATE: Encrypted(…….) # <-- 请在此处填写加密后的发布证书内容
      CM_CERTIFICATE_PASSWORD: Encrypted(…….) # <-- 请在此处填写加密后的发布证书密码
      CM_PROVISIONING_PROFILE: Encrypted(…….) # <-- 请在此处填写加密后的描述文件内容
    xcode: 12.4
    cocoapods: default
  triggering:
    events:
      - push
      - tag
      - pull_request
    branch_patterns:
      - pattern: 'master'
        include: true
        source: true
  scripts:
    - name: 调用Codemagic CLI的keychain命令初始化代码签名用的钥匙串
      script: |
        keychain initialize
    - name: 配置描述文件
      script: |
        PROFILES_HOME="/Users/vadivel/Library/MobileDevice/Provisioning Profiles"
        mkdir -p "$PROFILES_HOME"
        PROFILE_PATH="$(mktemp "$PROFILES_HOME"/$(uuidgen).mobileprovision)"
        echo ${CM_PROVISIONING_PROFILE} | base64 --decode > $PROFILE_PATH
        echo "Saved provisioning profile $PROFILE_PATH"
    - name: 将签名证书添加到钥匙串
      script: |
        echo $CM_CERTIFICATE | base64 --decode > /tmp/certificate.p12
        keychain add-certificates --certificate /tmp/certificate.p12 --certificate-password $CM_CERTIFICATE_PASSWORD
    - name: 为Xcode项目配置代码签名设置
      script: |
        xcode-project use-profiles
    - name: 构建.ipa安装包
      script: |
        xcode-project build-ipa --project "$XCODE_PROJECT" --scheme "$XCODE_SCHEME"
  artifacts:
    - build/ios/ipa/*.ipa
    - /Users/vadivel/Library/Developer/Xcode/DerivedData/**/Build/**/*.dSYM
  publishing:
    email:
        recipients:
          - xxxxx@gmail.com
        notify:
          success: true
          failure: true
问题原因及修复方案
  • 第一处错误:yaml配置中XCODE_PROJECT变量多写了一个冒号,原配置里是XCODE_PROJECT:: "TestApp.xcodeproj",多余的冒号导致变量解析失败,构建时无法正确获取到项目文件名,执行xcodebuild命令时project参数异常,最终返回状态码66,将冒号改为单个即可。
  • 第二处错误:报错信息中执行的scheme是Optivio,但yaml中配置的XCODE_SCHEME值为TestApp,两者不匹配,需要确认项目实际的scheme名称,确保配置值和实际值一致。
  • 额外校验项:
    • 确认描述文件和证书匹配,且对应项目的bundle id正确
    • 确认Codemagic使用的Xcode 12.4版本和本地构建成功的Xcode版本一致,避免版本差异带来的构建问题
    • 可以在构建脚本开头添加set -x打印执行日志,方便排查变量解析是否正确

内容的提问来源于stack exchange,提问作者Velu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.20 14:54:08