首页 > 解决方案 > 如何在 podspec 文件中定义快速版本的 spec.dependency "xxx", "~> 1.0"

问题描述

我正在编写一个 Cocoapod 库,并且正在使用一些依赖项。

是否可以为特定依赖项指定 Swift 的构建版本?

例子:

Pod::Spec.new do |spec|
spec.name = "xxx"
spec.version = "0.0.1"
spec.swift_version = 5.0
...

spec.dependency "Alamofire", "~> 5.0"
spec.dependency "AnotherPod", "~> 1.1"
end

我的包将使用 Swift 5 编译,但我的 AnotherPod 依赖项需要在 Swift 4.2 中编译

我正在使用 Cocoapod 1.9.1

标签: ioscocoapods

解决方案


根据该文档,没有办法将依赖关系限制为特定的swift_version

当依赖库将 swift 版本更改为您不支持的版本时,您可以监控依赖库,比如说,在5.1他们升级的 Alamofire 版本中swift_version,而您没有,那么您可以限制上限和下限允许的依赖项版本,例如

spec.dependency "Alamofire", ['>= 5.0', '< 5.1']

依赖版本限制的高级语法可以参考这个文档


推荐阅读