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

iOS:Azure CI执行Swift包时.docc文件报错,如何移除?

解决Azure CI中Swift包.docc文件引发的构建失败问题

在Azure CI构建iOS项目时,Firebase和Pulse这两个Swift包中的.docc文档目录会触发如下构建错误:

Cannot open "Pulse.docc" as a "Swift Package Folder" because it is already open as a "Folder".
Firebase包也会出现完全相同的报错。

你之前尝试的Bash脚本未生效,大概率是因为执行时机不对,或是找错了Swift包的存储路径。下面提供两种可行的解决思路:

方法一:直接删除Swift包缓存中的.docc目录

Swift包默认会缓存到~/Library/Caches/org.swift.swiftpm/目录,而非构建时生成的DerivedData。调整脚本到Xcode构建任务之前执行,直接清理缓存中的.docc文件夹:

- task: Bash@3
  displayName: "Remove .docc folders from SwiftPM cache"
  inputs:
    targetType: 'inline'
    script: |
      # 清理Swift包全局缓存里的.docc目录
      echo "Cleaning .docc folders from SwiftPM global cache..."
      find ~/Library/Caches/org.swift.swiftpm/ -type d -name "*.docc" -exec rm -rf {} \;
      
      # 如果项目有本地Packages目录,同时清理其中的.docc
      if [ -d "./Packages" ]; then
        echo "Cleaning .docc folders from local Packages directory..."
        find ./Packages/ -type d -name "*.docc" -exec rm -rf {} \;
      fi
      
      # 验证清理结果
      echo "Remaining .docc in global cache:"
      find ~/Library/Caches/org.swift.swiftpm/ -type d -name "*.docc" || echo "No .docc folders left"
      echo "Remaining .docc in local Packages:"
      find ./Packages/ -type d -name "*.docc" || echo "No .docc folders left"

方法二:通过Xcode构建参数跳过文档处理

不需要删除文件,直接在Xcode构建任务中添加-skipDocumentProcessing参数,让Xcode跳过对.docc文档的处理,从根源避免报错:

- task: Xcode@5
  displayName: "Build iOS Application"
  inputs:
    actions: 'build'
    scheme: 'YourAppScheme' # 替换成你的项目Scheme名称
    sdk: 'iphoneos'
    configuration: 'Release'
    xcWorkspacePath: '**/*.xcworkspace' # 适配你的项目结构,单项目用**/*.xcodeproj
    xcodeVersion: 'default'
    arguments: '-skipDocumentProcessing' # 核心参数:跳过文档处理

原脚本失效原因分析

  1. 路径错误:你指定的DerivedData是Xcode构建过程中临时生成的目录,执行脚本时Swift包可能还未被解压到此处,自然找不到.docc文件夹。
  2. 时机问题:如果脚本在Xcode构建之后执行,此时.docc目录已经被Xcode加载,删除也无法解决已触发的错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 01:12:15