我知道 Swift 包管理器可以从 Github 编译代码作为我的项目模块,但我能告诉包管理器编译存储在本地计算机上的代码吗?
我的想法是,我有一些代码想要从我的项目中分离出来,所以我将它保存在一个文件夹中,Swift 编译器会构建它,以便该代码可以像任何其他模块一样被导入。
我知道 Swift 包管理器可以从 Github 编译代码作为我的项目模块,但我能告诉包管理器编译存储在本地计算机上的代码吗?
我的想法是,我有一些代码想要从我的项目中分离出来,所以我将它保存在一个文件夹中,Swift 编译器会构建它,以便该代码可以像任何其他模块一样被导入。
您也可以使用
.package(path: "path to folder")
如果您不想要额外的Git存储库开销。这甚至可以是相对路径。
使用Swift 4版本工具,有不同的方法可以做到这一点--您不必提供一个带标签的版本:
.package(url: "<path to repo>", .branch("master")),
参见:https://github.com/apple/swift-package-manager/blob/master/Documentation/PackageDescriptionV4.md
swift package update
。 - Chris PrincePackage.swift
文件中引用本地目录,但它必须是一个Git存储库。此外,初始化仓库、提交和标记不足以使swift build
正确运行;仓库必须被推送到远程仓库中。Package.swift
:.Package(url: "../StringExtensions", "1.0.0")
。.git
目录的依赖本地路径,因此成功使用swift build
构建。error: Directory at path ... is not a Git repository
的错误。你可能在你的文件夹中留下了一个多余的 .git
文件夹,这就是为什么包管理器将其视为 git 仓库的原因。 - taylor swift