使用Swift 5.0编译的模块不能被Swift 4.2.1编译器导入。

4
有许多类似的问题,但它们大多是在使用CocoaPods/Carthage的情况下讨论的。我没有使用它们,而是手动导入所有框架。
我正在使用Xcode 10.1。我刚刚将其中一个框架更新到其最新版本(我们需要此版本才能使用某个功能),现在出现了此错误消息。我也有Xcode 10.2,但该项目已经编译了另外三个Swift 4.2.1框架,当尝试使用Xcode 10.2构建时,这些框架会抛出类似的错误(使用Swift 4.2.1编译的模块无法被Swift 5.0导入)。
对于这个问题的大多数答案都围绕为每个目标设置Swift语言版本为4.2.1。然而,由于我没有使用CocoaPods,我在Xcode中看不到更改此单独框架的Swift语言版本的任何选项。有什么想法吗?谢谢

Swift 4及以后版本可与Xcode 10.2配合使用。我最近将一个Swift 3项目更新到Swift 4,并现在正在使用它和Xcode 10.2。 - Adeel Miraj
是的,我尝试使用Xcode 10.2,并将项目Swift语言版本设置为4.2,但仍然收到“使用Swift 5.0编译器无法导入使用Swift 4.2.1编译的模块”的错误。 - jjjjjjjj
1
嗯,@joey,你说得对。但如果是这种情况,你在目标项目中使用不同版本的Swift就没有任何运气了。你必须使用编译框架时完全相同的版本。这是Swift编译框架的缺点。 - nayem
好的,谢谢。我会联系开发人员。 - jjjjjjjj
1
在我的情况下,ARVideoKit框架在xcode 10.2中不可用。但是在上一个版本的xcode中,它是可用的。所以目前还没有解决方案。请您自行检查一下。 - Ajjjjjjjj
显示剩余4条评论
1个回答

0

在 Xcode 版本 10.3 上,我一直遇到这个错误,尽管我的项目中的 Swift 版本已设置为 4.2。我尝试删除 DerivedData 等所有东西,但都没有用。我安装了 Xcode 10.1,它完美地工作,没有任何问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接