eta*_*luz 8 xcode swift carthage swift4 swift3.2
我有一个用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(我不再拥有)
你说:
有了这些条件你将无法解决问题:你不能混合使用Swift 3和4:https: //github.com/Carthage/Carthage/issues/1978
你唯一可以做的事情是(最终)解决这个问题:
场景1
在Cartfile上指定特定版本,例如:
github "yourDependency" == x.y.z
情景2
carthage update --platform iOS
Carthage/Checkouts/yourDependency
)并打开.xcodeproj以手动修改此选项:如果你已经解决了依赖关系,那么启动:
carthage build --platform iOS