解决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 条评论
登录 后参与评论

相关文章

来自专栏张善友的专栏

Mono 3.0 beta 正式发布

Mono 老大Miguel de Icaza 在博客上宣布了Mono 3.0的发布,这还是一个beta版本的发布,并不是正式发布,所以在运营环境还是要慎重使用,...

18310
来自专栏张善友的专栏

ASP.NET Identity 2新增双重认证、帐号锁定、防伪印章功能并修复了一些bug

Microsoft最近发布了ASP.NET Identity 2,该版本支持双重认证、帐号锁定以及防伪印章功能,还增强了用户帐号和索引。此外新版本还包含一个改进...

1918
来自专栏Windows Community

Windows 商店应用中使用 Office 365 API Tools

本篇我们介绍一个API 工具,用于在 Windows Store App 中使用 Office 365 API。 首先来说一下本文的背景: 使用 SharePo...

36310
来自专栏张善友的专栏

使用 NuGet 管理项目库

共享和重用代码是一个很大的挑战。 不相信? 请随便走进一间中型或大型工作室,问问他们有多少日志记录库。 访问多家公司后,您将发现他们拥有比例非常高的内部日志记录...

17810
来自专栏Golang语言社区

IntelliJ idea配置Go开发环境

IntelliJ idea一个月,甚得我心,终弃Sublime、liteIDE。 IntelliJ idea是非常强大的一款IDE,支持丰富的插件。安装配置都是...

6006
来自专栏新工科课程建设探讨——以能源与动力工程专业为例

2.1 开发平台搭建: 工欲善其事,必先利其器

550
来自专栏.NET开发者社区

(码友推荐)2018-07-07 .NET及相关开发资讯速递

1.Different Ways to Compare SQL Server Tables Schema and Data

802
来自专栏.NET开发者社区

(码友推荐)2018-07-10 .NET及相关开发资讯速递

2.第三节:SignalR之PersistentConnection模型详解(步骤、用法、分组、跨域)

1152
来自专栏NetCore

用Js控制TextBox不能复制粘贴

今天项目中,有一个要求,需要有一个Textbox(WebControls),不能复制、粘贴 一开始没想到TextBox有这个事件,一直在找,找了N久,只有Wi...

22110
来自专栏程序员与猫

ASP.NET Core 介绍和项目解读

标签: ASP.NETCore 1. 前言 作为一个.NET Web开发者,我最伤心的时候就是项目开发部署时面对Windows Server上贫瘠的解决方案...

2366

扫码关注云+社区