3

我创建了一个空白模板包:

> swift package init --name Temp
> open Package.swift

Xcode 版本 13.2.1 (13C100) 打开包。

我在包中添加了一个依赖项。

dependencies: [
    .package(url: "https://github.com/johnsundell/publish.git", from: "0.7.0")
],

Xcode > Product > Build 此时成功。

我编辑Temp/Sources/Temp/Temp.swift以插入第一行中定义的包dependencies

import Publish

构建现在会生成以下错误:…/Temp/Sources/Temp/Temp.swift:1:8: error: no such module 'Publish'.

我确信这是一个Apple错误。或者我可能会遗漏一些东西。

当有一个xcodeproj额外的结构提供时,有几个关于这个问题的帖子。其中一些暗示了可以帮助某些人的解决方法。

有没有人看到这个和/或知道如何解决它?

Apple 的Creating a Standalone Swift Package with Xcode文档没有提供任何见解。

4

1 回答 1

3

感谢评论中的喋喋不休,@Larme 和 @koen,它有帮助

问题是用户错误(和/或文档失效)。生活在(流血)边缘。

有时,更改的更新速度很慢,或者需要清理或重新启动。

Xcode 从包中定义的目标自动生成方案。我的构建目标是MyTarget.

缺少两件事:

  1. name: "Publish"未包含在包依赖项中 - 它是必需的,因此您可以在下面引用它(或者这可以派生,由于 Xcode 刷新问题很难判断),并且
  2. 使用包依赖关系的每个目标都需要一个引用dependencies,我需要添加dependencies: ["Publish"]相关目标
    dependencies: [
        .package(name: "Publish", url: "https://github.com/johnsundell/publish.git", from: "0.7.0")
    ],
    …
    targets: [
        .target(
            name: "MyTarget",
            dependencies: ["Publish"]),
    ]
于 2021-12-30T22:58:34.520 回答