如何使用 Swift 包管理器添加依赖项

mut*_*thu 1 xcode ios swift swift-package-manager swift4

我正在使用 xcode 版本 10.1 和 swift 4 我想 向我现有的项目添加一个新的依赖项 https://github.com/IBM-Swift/BlueECC/blob/master/README.md我按照以下步骤安装使用快速包管理器

  1. 导航到终端中的根文件夹
  2. 快速包初始化
  3. 打开文件夹中的 package.swift 文件并添加 .package(url: " https://github.com/IBM-Swift/BlueECC.git ", from: "1.2.4") 和 .target(name: "example" , 依赖项: ["CryptorECC"]) 在各自的地方
  4. 在终端中快速构建
  5. 导入包

但是包没有被导入,请纠正我的错误

Yog*_*ate 8

有四种方法可以在 Package.swift 清单文件中添加依赖项。添加 Alamofire 库作为示例。

使用标签版本

 // Syntax
.package(url: "Repository URL", from: "Version") 

// Example
.package(url: "https://github.com/Alamofire/Alamofire.git", from: "5.0.2") 
Run Code Online (Sandbox Code Playgroud)

使用分支名称

// Syntax
.package(url: "Repository URL", .branch("branch-name"))

// Example
.package(url: "https://github.com/Alamofire/Alamofire.git", .branch("master"))
Run Code Online (Sandbox Code Playgroud)

使用提交 ID

 // Syntax
 .package(url: "Repository URL",
                  .revision("commit-id"))

 // Example
 .package(url: "https://github.com/Alamofire/Alamofire.git",
                  .revision("eb67560abbc58e7d98e6e17daa5bd9376625f038"))
Run Code Online (Sandbox Code Playgroud)

使用本地存储库

// Syntax
.package(path: "../Repository local path")

// Example
.package(path: "../Alamofire")
Run Code Online (Sandbox Code Playgroud)

之后将其添加到Package.swift文件中的目标部分:这是必须添加的,因为这将使 Swift PM 可以访问模块,否则库/模块将无法在 Swift PM 中访问。

// Syntax
.target(
    name: "target-name",
    dependencies: ["dependency-name"]),

// Example
.target(
    name: "MyApp",
    dependencies: ["Alamofire"]),
Run Code Online (Sandbox Code Playgroud)

在此处找到有关 Swift PM 的更多技术细节。


cur*_*y77 0

您将需要包 URL、版本号和包名称。

将其添加到您的清单中:

.package(url: 'the url of the package', from: 'version number')
Run Code Online (Sandbox Code Playgroud)

之后将其添加到您的目标文件中:

.target(
    name: "target-name",
    dependencies: ["dependency-name"]),
Run Code Online (Sandbox Code Playgroud)