我是swift和xcode领域的新手,所以在尝试将软件包集成到我的项目时遇到了问题。

我想使用以下命令添加Alamofire依赖项:

在我的根项目文件夹中:

swift init

这将创建Package.swift文件,我在其中添加依赖项,然后运行:
swift build

一切似乎都还可以,但是当我尝试导入我的库时,我是我的项目:
import Alamofire

我收到一条错误消息,提示模块未被识别。
因此,我的问题是,在不使所有程序崩溃的情况下集成Package Manager和对现有项目的依赖关系的正确步骤是什么?

更新:
swift build

输出:
Resolved version: 4.3.0
Compile Swift Module 'Alamofire' (17 sources)
Compile Swift Module 'Sample' (1 sources)

我的Package.swift是:
import PackageDescription

let package = Package(
    name: "Sample",
    dependencies: [
        .Package(url: "https://github.com/Alamofire/Alamofire.git", majorVersion: 4)
    ]
)

最佳答案

Swift Package Manager是一个独立的工具,无需Xcode就可以管理依赖项和构建项目。它可以使用swift package generate-xcodeproj为您生成Xcode项目。

但是,目前,Swift Package Manager仅支持为macOS和Linux平台构建项目。构建适用于iOS,tvOS和watchOS的项目的唯一方法是使用Xcode,其中包括这些平台所需的SDK。

有多种方法可以使用Swift Packages Manager来管理iOS/tvOS/watchOS的依赖关系,但这并不容易,并且需要手动操作。如果您有兴趣,请看看https://github.com/j-channings/swift-package-manager-ios

除此之外,我建议使用CarthageCocoaPods

Xcode 11的更新

Swift软件包管理器现已集成到Xcode 11中。您可以通过以下方式添加软件包:"file",“Swift软件包”,“添加软件包依赖性...”。将存储库的URL粘贴到上面的字段中,然后单击“下一步”。 Xcode将引导您完成其余的步骤。您可以在this WWDC talk上了解更多信息。

关于ios - 在现有的xcode项目上使用Swift Package Manager,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41900749/

10-12 14:42
查看更多