小编Tim*_*del的帖子

Swift Package Manager 平台特定资源:iOS xibs 不支持目标设备类型“mac”

我正在使用 Swift Package Manager 构建一个库。我添加了一个 XIB 文件来定义自定义UICollectionViewCell. 我的包无法在 Xcode 中编译,因为 XIB 文件特定于 iOS。如果我创建 macOS XIB,则会出现相反的错误。这似乎是因为:

  1. 由 Swift Package Manager 构建的库始终是跨平台的,因此我无法构建“仅限 iOS”的包。
  2. 代码可以使用诸如#if os(iOS)处理特定于平台的代码之类的机制。
  3. resources: [ .process("resource.name") ]没有BuildSettingCondition告诉它仅在为 iOS 构建时包含特定的 XIB 文件。
  4. .xib由 Xcode 自动处理,无需声明,Package.swift因为很明显它们是资源文件,因此Xcode 会自动处理它们
  5. xcodebuild似乎没有规则来分隔两个不同的.xib文件以进行特定于平台的处理。

我缺少什么?如何确保 iOS 特定资源不会被强制包含在最终包中?

xcode xcodebuild xib ios swift-package-manager

6
推荐指数
1
解决办法
1902
查看次数

标签 统计

ios ×1

swift-package-manager ×1

xcode ×1

xcodebuild ×1

xib ×1