解决导入ReactiveCocoa框架报错问题

更新Xcode至8.3.1后出现“UseLegacySwiftLanguageVersion”配置错误提示,尝试使用ToCurrentSwiftSyntax解决,但引发更多API变更问题。对于混合Objective-C与Swift项目,推荐使用ReactiveObjC与ReactiveObjCBridge。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天更新了下xcode到8.3.1,发现报错
“Use Legacy Swift Language Version” (SWIFT_VERSION) is required to be configured correctly for targets which use Swift. Use the [Edit > Convert > To Current Swift Syntax…] menu to choose a Swift version or use the Build Settings editor to configure the build setting directly”
原本以为在设置里将user legacy swift language version设为yes就可以了,发现这里只有版本选择.然后就选择用to Current Swift Syntax 去试一试,等待更新后发现错误更多了,好多方法的API都已经变了,导致Reactive Cocoa的报错更多,后来查了下版本,原来早就升级到了5.0,在这里就说下版本变化的差异

**如果你只是纯 swift 项目,你继续使用 ReactiveCocoa 。但是 RAC 依赖于 ReactiveSwift ,等于你引入了两个库。
如果你的项目是纯 OC 项目,你需要使用的是 ReactiveObjC 。这个库里面包含原来 RAC 2 的全部代码。
如果你的项目是 swift 和 OC 混编,你需要同时引用 ReactiveCocoa 和 ReactiveObjCBridge 。但是 ReactiveObjCBridge 依赖于 ReactiveObjC ,所以你就等于引入了 4 个库。**

因为目前项目语言主要是OC,所以直接引入了
pod 'ReactiveCocoa', '~>5.0.1'
pod 'ReactiveObjC', '2.1.2'
就可以了

想要了解更多,可以查阅这里
http://www.cocoachina.com/ios/20161116/18104.html

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值