热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

使用Swift3.2.2(不是Swift4.0)告诉Carthage构建依赖项

如何解决《使用Swift3.2.2(不是Swift4.0)告诉Carthage构建依赖项》经验,为你挑选了1个好方法。

我有一个用Swift 3.2.2编写的项目,并使用XCode 9.1编译

我有一个使用此命令使用Carthage构建的依赖项:

carthage update --platform iOS

问题是Carthage使用Swift 4.0(而不是Swift 3.2.2)构建依赖项

使用Swift 4.0编译的模块无法在Swift 3.2.2中导入

如何告诉Carthage使用Swift 3.2.2构建我的依赖项,以便它可以在我的项目中使用?

我还不想将我的项目升级到Swift 4.0.

Xcode 9.1支持Swift 3和Swift 4.那么如何在编译依赖时告诉Carthage使用Swift 3?我不想告诉它使用早期版本的XCode(我不再拥有)



1> Andrea Mugna..:

你说:

    您的项目正在Swift 3.2.2中编译

    您的依赖项,一旦解决并与Carthage一起下载,将在Swift 4中进行编译(因为它的构建设置是以这种方式配置的)

有了这些条件你将无法解决问题:你不能混合使用Swift 3和4:https: //github.com/Carthage/Carthage/issues/1978

你唯一可以做的事情是(最终)解决这个问题:


场景1

    你应该找到一个以Swift 3.2~构建的库的先前版本,如果存在的话

    在Cartfile上指定特定版本,例如:

    github "yourDependency" == x.y.z


情景2

    发射 carthage update --platform iOS

    进入您的依赖文件夹(Carthage/Checkouts/yourDependency)并打开.xcodeproj以手动修改此选项:

在此输入图像描述

    那么你可能会遇到大量的构建问题,因为你正在制作一个语言回归,你可以尝试修复它们(如果很小或者没有,那么它可能是可能的).

    如果你已经解决了依赖关系,那么启动:

    carthage build --platform iOS

    尝试编译你的项目......


推荐阅读
author-avatar
疯务情堂
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有