gpt4 book ai didi

swift - 如何构建自定义 Swift 框架以及它与 SPM 有何关系?

转载 作者:搜寻专家 更新时间:2023-10-31 08:22:22 24 4
gpt4 key购买 nike

我目前正在构建我真正想用作框架的代码,方法是能够像使用 Apple 框架一样import MyCustomFramework(将来我也想分发它们)。

我对此有一些疑问:

  • 构建我想要的框架的最简单方法是什么?是否可以直接在 Xcode 中执行此操作,还是需要在终端中使用命令行工具?
  • 这个框架是否与多个平台兼容(我正在考虑所有 Apple 平台,但也考虑 Swift 支持的其他平台,例如 Linux)。
  • Swift 框架和 Swift 包管理器之间的确切联系是什么?我需要 SPM 来构建我的框架,还是这两种不同的工具?

谢谢。

最佳答案

目前,Swift Package Manager (SPM) 和 Xcode Frameworks 遵循不同的路径。对于 Linux,您必须遵循 SPM 路径,因为编译 Linux swift 应用程序的唯一方法是使用 SPM。对于 macOS 命令行应用程序,您也可以遵循 SPM 路径。对于 iOS 应用程序和 macOS UI 应用程序,您必须遵循 Xcode Frameworks 路径

对于 SPM 路径,您使框架的项目SPM 启用:添加 Package.swift 文件并根据 SPM 约定设置项目的文件布局.该项目还必须是一个 git 存储库。然后可以将项目的 git 存储库指定为对其他支持 SPM 的框架/应用程序的依赖项。每个启用 SPM 的项目都可以随时使用 swift package generate-xcodeproj 命令转换为 Xcode 项目。

Xcode Frameworks 路径是使用 Xcode 框架的标准、SPM 之前的方式,这在其他地方有描述。您创建一个 Xcode 项目来定义您的框架。

因此,如果您希望您的框架既用于支持 SPM 的 Linux 和 macOS 命令行应用程序项目,又用于支持 Xcode 的 iOS 和 macOS UI 应用程序项目,您必须遵循双重路径。您使您的项目启用 SPM 并添加一个 Xcode 项目来定义您的框架。您必须两次维护您的项目信息 - 在 Package.swift 文件和 Xcode 项目中。

关于swift - 如何构建自定义 Swift 框架以及它与 SPM 有何关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41345556/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com