解决Xcode9 Swift4下Cocoapods编译Swift第三方时报错

随着Xcode9 Swift4 的到来,一些小问题也接踵而至。许多优秀的Swift第三方框架还未来得及迎接Swift4的到来,它们还停留在swift3.x的状态,这个时候新建一个项目,使用cocoapods写上需要使用的第三方,一编译就是满屏红,如下图。

报错

所幸,苹果每次升级Xcode都会保留上个版本的swift,以防暴乱?~~

有两种解决方案 其本质都是控制编译时所使用的Swift版本

第一种:Xcode

Pods -> Targets -> SnapKit -> Build Settings -> Swift language version option 选择 Swift 3.2。不推荐使用该方法,一个个点效率有些低~~

Pods

第二种:使用Cocoapods控制

打开Podfile文件,添加并按需要修改下方代码来指定哪些第三方的Swift编译版本,接着来一次

pod install

最后再来一下编译就搞定了

post_install do |installer|
    # 需要指定编译版本的第三方的名称
    myTargets = ['ObjectMapper', 'SnapKit']
    
    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

位置如图所示

Cocoapods

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏小白课代表

休息,是为了更好的前行。

1083
来自专栏web前端教室

【亲测】最好用的4个JavaScript编辑器

然后我在讲课的时候发现同学们用的编辑器各不相同,有的同学用的是editplus,有的甚至用的是老掉牙的DW,这我就不能忍受了,今天晚上给大家推荐几款比较Ok的编...

960
来自专栏编程微刊

在jsp页面里面设置全局引用文件

993
来自专栏听雨堂

Flash背景透明的代码

      我觉得这个应该不是太难,结果DW中死活设置不成功,网上搜索到的都是一些互相抄了抄去的不知所云的东西,懒得去学习研究,还不如在自己原来做过的网站中找代...

1766
来自专栏程序人生 阅读快乐

Linux Shell编程与编辑器使用详解

本书由浅入深,全面、系统地介绍了Linux技术,书中提供了大量实例,供读者实战演练。另外,本书有很多关于Linux下的命令操作内容,所以对于每个命令、每个管理设...

451
来自专栏企鹅号快讯

搭建Python环境

这节课派老师教大家搭建一个Python环境,以便于可以编写和调试Python代码。让我们走入Python的奇妙世界吧! 可以安装Python的操作系统非常多,有...

2179
来自专栏向治洪

Kotlin极简教程(第一章 Kotlin简介)

1.1 kotlin简史 科特林岛(Котлин)是一座俄罗斯的岛屿,位于圣彼得堡以西约30公里处,形状狭长,东西长度约14公里,南北宽度约2公里,面积有16平...

2047
来自专栏逸鹏说道

Semantic UI logo前端界面开发框架 Semantic UI

Semantic UI—完全语义化的前端界面开发框架,跟 Bootstrap 和 Foundation 比起来,还是有些不同的,在功能特性上、布局设计上、用户体...

3337
来自专栏微信小程序开发

小程序技术杂谈 手写签名DEMO

好久没写文章,小程序群内已经有群友反馈给我,希望我坚持写公众号文章。感谢这位群友 & 粉丝的支持!连胜老师最近确实变懒了,今天来说说群友们进期在群内讨论的几个问...

1032
来自专栏Crossin的编程教室

Python 实战(0):初识 web.py

在 Python 系列的基础课程结束之后,很长一段时间我不知道该写点什么。再加上工作很忙,也没法很系统地写一些教程文章。于是之前东拉西扯说过不少方面的东西,也分...

2918

扫码关注云+社区