我有一个包含很多内部 Swift 包的项目。在每个 Package.swift 文件中,我定义了某些内容,例如我想要用于该包的 Swift 设置,以及用于生成产品、单元测试目标等的辅助函数。例如,在每个包文件中我有:
extension [SwiftSetting] {
/// A default set of Swift settings to enable for modules.
static let `default`: [SwiftSetting] = [
.existentialAny,
.internalImportsByDefault
]
}
但是,在每个包文件中重写它是非常麻烦的。我想知道是否有一种方法可以在所有内部包文件之间共享代码以简化和简化此过程。不确定这是否可行,但在 Package.swift 文件中,我们可以导入
PackageDescription
,它提供了所有基本的包定义类型 - 有没有一种方法可以像 PackageDescription 一样导入自定义代码集?
package.swift 文件被制作为没有依赖项的独立文件,因此不幸的是这是不可能的。
但是如果你的共享代码主要是数据,你可以把它放在结构化的Json文件中并在包文件中读取它