首页 > 解决方案 > 使用 SwiftPM 库归档 Xcode 项目失败

问题描述

我正在尝试创建我的 Xcode 11 项目的存档,但它一直失败。该项目使用了两个通过 SwiftPM 直接从 Xcode 导入的库。在我的物理设备上构建和运行项目,模拟器工作正常。

当我归档项目时,我的一个库出现编译器错误,说他没有找到 SwiftUI 关键字 ( Use of undeclared type Binding, ...)。对于第二个库,他只是说,编译失败,退出代码为非零。我已上传存档日志

在使用 SPM 归档项目时,我有什么特别需要做的吗?我必须更改任何构建设置吗?

我在归档期间选择的 iPhone 上运行 iOS 13.1.2。我的部署目标是 iOS 13.0,而我的 Macbook 正在运行带有 Xcode 11.0 的 macOS Mojave 10.14.6。

我已经尝试删除 DerivedData 文件夹并从他们的 GitHub 重新获取库。

标签: iosxcodeswiftuiswift-package-manager

解决方案


在尝试了更多之后,我发现该项目在使用 Release 配置时没有编译(而不仅仅是在归档时)。

我的项目的问题是我的 Swift 库。看来,使用 SwiftUI 的 SwiftPM 库需要以下部分Package.swift

platforms: [
    .iOS(.v13),
    .macOS(.v10_15),
    .tvOS(.v13)
],

表示它至少需要 iOS 13、macOS 10.15 或 tvOS 13。

将该部分添加到我的 Swift 库后,项目编译为存档,没有任何问题。


推荐阅读