Xcode 10转换为Swift 4.2失败

时间:2018-09-19 19:16:30

标签: ios swift xcode xcode10 swift4.2

我在尝试使用Xcode提供的转换工具迁移到Swift 4.2时遇到此错误。我如何解决它?否则,代码会正常构建。

enter image description here

5 个答案:

答案 0 :(得分:3)

您的项目中是否有任何库?我认为您正在尝试使用依赖项隐蔽您的项目,而新的Swift版本在它们中存在问题。尝试取消选中项目以外的所有依赖项,并转换为新版本的Swift

答案 1 :(得分:0)

将所有依赖项(例如通过Cocoapods)升级到支持Swift 4.2的最新版本始终是一个好主意。就我而言,我还需要手动将Pod库的Swift语言版本构建设置从Swift 4更改为Swift 4.2,因为该lib仅在4.2中使用某些API。

答案 2 :(得分:0)

我也有问题。我在网上找到解决此问题的解决方案 https://ericasadun.com/2018/09/13/converting-projects-by-hand-to-4-2/

第一

您尝试在pod文件中删除pod,然后在命令中再次安装pod,然后在文件夹项目中更新pod更新,然后转换为Swift 4.2。 如果不行,请在第二秒执行此操作。

第二

您可以尝试在构建设置项目中执行此操作,或尝试在链接网络中执行操作。

enter image description here

enter image description here

答案 3 :(得分:0)

我有类似的问题,通过

解决了

1-在所有应用和测试目标的构建设置中将swift lang版本更改为4.2

2-构建应用程序,将发生错误,例如将UIControlState重命名为UIControl.state

3-修复所有构建错误

4-我通过xcode更新了所有推荐设置

5-然后我要求xcode转换为swift4.2

updated all recommended settings

答案 4 :(得分:0)

here所述,

在处理目标时可能存在问题 对迁移过程产生负面影响。切换到报告 导航器,然后选择已添加的转换条目;这是 转换生成日志。检查日志中可能显示的错误 上。

如果看到有关无法对目标进行代码签名的错误,请尝试 从目标的构建设置中禁用代码签名。如果你 查看其他错误,请file a bug report并提供详细信息。 强烈建议您附加一个项目,以说明 如果可能的话,错误的迁移。