Xcode9 Swift4下编译Swift第三方框架时报错Swift compiler Error的解决方案

版权声明:本文为博主原创文章,欢迎转载,转载请注明作者、原文超链接。

随着 Xcode9 Swift 4.0 的到来,一些小问题也接踵而至。

许多优秀的 Swift 第三方框架还没有来得及迎接 Swift 4.0 的到来,它们还停留在 Swift3.x 的状态。

这个时候新建一个项目,使用cocoapods 引入所需的第三方,即使 pod install 成功后,一编译工程就是满屏红,且报错 Swift compiler Error,如下图:

不过所幸,苹果每次升级 Xcode 都会保留上个版本的 swift。

解决方案,控制编译时第三方框架所使用的 Swift 版本,有如下两种方法。

方法1. 在 Xcode 设置中手动为每个需要指定 swift 版本的第三方框架设置 swift 版本,如下图:

方法2. 在podfile 文件中,使用 Cocoapods 控制 :

platform :ios, '9.0'
post_install do |installer|
    # 需要指定swift编译版本的第三方的名称
    myTargets = ['Charts','Moya']
    installer.pods_project.targets.each do |target|
        if myTargets.include? target.name
            target.build_configurations.each do |config|
                config.build_settings['SWIFT_VERSION'] = '3.2'
            end
        end
    end
end

use_frameworks!

target 'xxxx' do

pod 'IQKeyboardManager', '~>4.0.6'
pod 'JSONModel'
pod 'KVOController'
pod 'MagicalRecord'
pod 'Mantle'
pod 'MJRefresh'
pod 'Masonry'
pod 'Moya'
pod 'ReactiveSwift'
pod 'SDWebImage'
pod 'SwiftyJSON'
pod 'SDCycleScrollView'
pod 'Charts', '~> 3.0.1'

end

然后再 pod install 一下就可以了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 好久,都没有提笔 是不是窗外的蝉鸣 聒噪乱了思绪 倦怠了,就安然睡去 又见七月,而你 却停留在记忆里的七月 你变得...
    晓丰残月阅读 2,523评论 0 3
  • 1: 之前写一个NSArray 进行数据转化的时候 通常都是采用对数组进行遍历,进行对数据的处理,其实ios 以为...
    BillZhang88阅读 3,508评论 0 0

友情链接更多精彩内容