XCode SPM - 未找到包 [package] 目标 [target] 所需的产品 [product]

XCode SPM - product [product] required by package [package] target [target] not found

我在我的项目中使用 SPM 并希望集成 Texture。我的项目使用 SPM 分为不同的模块。我只想在一个中使用纹理。

问题是Texture不支持SPM。我从这个支持 SPM 的 PR 派生出来的。我已经在我的项目中成功集成了Texture,但是无法使用它。

我的Package.swift:

let targets: [Target] = [
    .target(name: "MyTarget", dependencies: ["Texture"]),
]

let package = Package(
    name: "MyPackage",
    platforms: [.iOS(.v14), .macOS(.v10_15)],
    products: targets.filter { ![=11=].isTest }.map { .library(name: [=11=].name, targets: [[=11=].name]) },
    dependencies: [
        .package(name: "Texture", url: "https://github.com/bejeri4/Texture.git", .branch("spm")),
    ],
    targets: targets)
)

当我将 Texture 作为依赖项添加到我的本地包时,出现以下错误:

product 'Texture' required by package 'MyPackage' target 'MyTarget' not found.

我认为在目标的依赖项中,您需要指定包 Texture 的产品,而不是包名称本身。产品是 AsyncDisplayKit 和 AsyncDisplayKitIGListKit:

所以您应该修改目标以使用如下产品之一:

let asyncDisplayKit = Target.product(name: "AsyncDisplayKit", package: "Texture")

let targets: [Target] = [
    .target(name: "MyTarget", dependencies: [asyncDisplayKit]),
]