使用 Swift 包管理器添加目标依赖项时出错

Error adding target dependencies with Swift Package Manager

尝试包含目标依赖项时出现错误:The manifest describes a target that cannot be found in your source tree: parser

这是我的 Package.swift 文件:

import PackageDescription

let package = Package(
    name: "Phoenix",
          targets: [
            Target(
                name: "Phoenix",
                dependencies: [.Target(name: "parser")]),
            Target(
                name: "parser")
    ]
)

我遵循此处描述的格式:https://github.com/apple/swift-package-manager/blob/master/Documentation/Package.swift.md

Swift 包管理器文档,您 link 指出 The targets are named how your subdirectories are named. 如果找不到目标 parser,可能是您没有名为 [=11] 的子目录=] 位于您的 Package.swift 文件所在的目录中。

您应该阐明您的目录结构,以便可以将其与您的 Package.swift 内容进行比较。

编辑

Max 提供了一个很好的例子。请注意,'Sources' 目录也可以是 'Source'、'src' 或 'srcs'

你有 parser 目录吗?

你应该有这样的布局:

     .
     └── Sources
         └── Phoenix
         │   └── File1.swift
         └── parser
             └── File2.swift

或者:

     .
     └── Phoenix
     │   └── File1.swift
     └── parser
         └── File2.swift

这指示 SwiftPM 创建两个模块,一个称为 Phoenix,另一个称为 "parser"。

虽然你们都是对的,但我的实际问题是我的子目录不包含任何 swift 代码,因此没有生成模块