iOS之报错上架填坑iOS开发实践IOS

Xcode 8:Use Legacy Swift Languag

2016-11-01  本文已影响1970人  请叫我小陈陈

前言

昨天心血来潮用Xcode8建个项目,准备练个手,结果遇到一问题,郁闷了很久……还好最后解决了。做个笔记_

谜之心酸的过程

在项目里面我用到了Alamofire,RxSwift……,我用pods来管理这些三方库,来个部分截图:

图1.png

当我再次打开工程的时候,我就无语了。一直提醒我:


图2.png

这个时候我就很郁闷了,因为我之前看过这些三方库现在都更新来支持Swift3.0了,为什么还让我转呢?因为心存疑惑所以说我没点Convert,一直点的Later。然后当我Build了项目,结果给我来两个error:

图3.png

“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.
当我看到这两个错误的时候,我就不开心了-_-#
对于Alamofire:

图4.png

对于RxSwift:

图5.png
然后就很郁闷了……当时考虑到可能是我的CocoaPods版本太低,我的小伙伴导入一样的这些三方库,他的就没有问题。想到万能的网络,我没有忙着更新pods。最后发现不止我一个人遇到这样的问题,在Alamofire的issues里面有人已经提过这个问题了issues:1526
亲测的解决办法:
post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['SWIFT_VERSION'] = '3.0'
        end
    end
  end

用法很简单:

图6.png

更新pods到最新版本

sudo gem install -n /usr/local/bin cocoapods --pre

更新pods到指定版本

sudo gem install -n /usr/local/bin cocoapods --version 1.0.1

上一篇下一篇

猜你喜欢

热点阅读