swift - 将我的 pod 迁移到 Swift 4

标签 swift cocoapods swift4

我在 Swift 3 中创建了我的 pod,现在我想将其迁移到 Swift 4。

我已经在示例项目中完成了代码迁移(我选择在运行pod lib create时创建示例),但我的podspec仍然没有通过验证。

原因之一是默认的 cocoapods 配置将其编译为 Swift 3。

另一个是,为了更新依赖项以使用 Swift 4 进行编译,我需要引用特定分支,例如 RxSwift,但我找不到在podspec。

如何解决这些问题?

最佳答案

根据 CocoaPods: point to a branch in pod spec

您不能在 podspec 中使用 :git 和 :branch 元数据。预计 :git 和 :branch 元数据将来自 podfile。

如果您想使用标签,请像下面这样使用:RxCocoa/RxSwift for swift 4 tag(4.0.0-beta.0)

Pod::Spec.new do |s|
    ###Your code here
    s.dependency 'RxCocoa', '~> 4.0.0-beta.0'
    s.dependency 'RxSwift', '~> 4.0.0-beta.0'
end

如果你想使用分支,那么 您的 podspec 如下所示:

Pod::Spec.new do |s|
    ###Your code here
    s.dependency 'RxSwift'
end

您的Podfile将是:

use_frameworks!

target 'YOUR_TARGET' do
    pod 'RxSwift', :git => 'https://github.com/ReactiveX/RxSwift.git', :branch => 'rxswift4.0-swift4.0'
end

关于swift - 将我的 pod 迁移到 Swift 4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46381543/

相关文章:

swift - Swift 4 中的 private 和 fileprivate 有什么区别

ios - 我应该使用哪个文件系统目录来存储文件?

ios - watchOS 2 使用 CocoaPods

ios - 具有多个部分的 UITableView 和具有单个单元格选择和多个单元格选择的自定义部分标题

ios - Swift 桥接头文件不适用于 use_frameworks

ios - 使用 CocoaPods 将头文件复制到包含文件夹

单例模式的Swift继承?

objective-c - 线程可以与队列类似地使用,还是它们意味着不同的东西?

swift - 如何在SwiftUI中制作刮刮卡效果?

ios - 分页 UIScrollView "Prototype Pages"