swift包管理器'找不到目标'错误信息

时间:2017-12-10 00:24:41

标签: ios swift xcode socket.io swift-package-manager

我对包管理器很新,似乎无法正确导入库。我使用以下代码:

import PackageDescription

let package = Package(
    name: "MyAppName",
    products: [
        .executable(name: "MyAppName", targets: ["MyAppName"])
    ],
    dependencies: [
        .package(url: "https://github.com/socketio/socket.io-client-swift", .upToNextMinor(from: "13.1.0"))
    ],
    targets: [
        .target(name: "MyAppName", dependencies: ["SocketIO"], path: "./Source Files")
    ]
)

创建此文件并将其放入项目主目录后,打开终端窗口并键入swift build。提取文件但是我收到以下错误消息:

  

无法找到目标:MyAppName;使用Swift 4清单中的'path'属性来设置自定义目标路径

我真的不明白包文件的产品和目标部分以及我做错了什么。我只是将我的应用程序“MyAppName”用于可执行文件和目标,但不太明白这是否正确。此外,不确定路径是否正确。我希望将库添加到主项目目录中名为Source Files的文件夹中。

1 个答案:

答案 0 :(得分:2)

Package.swift 中的所有内容看起来都很好,您只需将 MyAppName 目录与源文件放在 Sources,Source,src中的一个目录中,顶级目录中的srcs 。 所以顶级目录(Package.swift所在的目录)应具有以下结构:

TopLevelDirectory |- Package.swift |- Sources |- MyAppName |- MyAppNameSource1.swift |- MyAppNameSource2.swift

或者,您可以将“path”属性添加到目标“MyAppName”的定义中,并指定包含源的目录所在的位置。

参考:https://github.com/apple/swift-package-manager/blob/master/Documentation/PackageDescriptionV4.md#target-format-reference