【问题标题】:Error adding target dependencies with Swift Package Manager使用 Swift 包管理器添加目标依赖项时出错
【发布时间】:2016-03-20 07:55:38
【问题描述】:

尝试包含目标依赖项时出现错误: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 swift-package-manager


    【解决方案1】:

    虽然你说得对,但我的实际问题是我的子目录没有包含任何快速代码,因此没有生成模块

    【讨论】:

    • 啊。好的,这是一个错误。我今天会修好它。
    • 我无法让它工作,因为我的“模块”在我导入它们时会失败。我的一个模块将本机库导出为“子模块”,但所有这些导入都失败了。
    【解决方案2】:

    您链接到状态 The targets are named how your subdirectories are named. 的 Swift 包管理器文档如果找不到目标 parser,可能是您的 Package.swift 文件所在的目录中没有名为 parser 的子目录。

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

    编辑

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

    【讨论】:

      【解决方案3】:

      你有parser 目录吗?

      你应该有这样的布局:

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

      或者:

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-03-21
        • 2021-04-28
        • 2021-09-25
        • 1970-01-01
        • 2017-05-15
        • 1970-01-01
        • 1970-01-01
        • 2020-08-11
        相关资源
        最近更新 更多