升级Xcode 10 的一些坑

2018-11-19  本文已影响56人  木马sun

最近把公司项目从Xcode 9.2 直接升级到Xcode 10,语法从swift 3.2 升级到 swift 4.2, 项目直接导入时出现了大量的红色错误,最后一步步得以解决,记录一下。

语法:
1:我们会看到很多 能点击小圆点,让系统帮我们修改完成的错误,跟着点击就是。
2:swift 3.2 到4.2 中间跨过了一个比较大的变动版本 4.0,所以一些语法修改参照:

https://blog.csdn.net/feosun/article/details/72980288,https://www.jianshu.com/p/d2efa9bbec59.
https://www.jianshu.com/p/d2efa9bbec59

补充两点一个是 @object 在 类扩展的方法中必须要加, 还是对uiimage 的处理方式有改动

编译器:
升级到Xcode 10之后,自带最新语法是 seift 4.2,首先我们要检查对应的cocoapods 库的引用文件是否升级到最新,如果在不指定第三方库版本号时有可能无法连接到最新第三方库,同事需要将cocopods 升级到最新版本。
如果发现明明存在的第三方库,总是报错找不到文件:“directory not found for option” and “library not found for -libstdc++.6, 最简单的方法是 先删除 cocopods 库中的所有文件,再重新导入。

Command failed due to signal: Segmentation fault: 11 ,代表指令错误,程序在编译时无法将代码翻译成指令集。仔细检测对应位置的代码是否正确。出现情况较多的是 nil 类型没有做解包操作(注意 ?? 双可选类型),数组类型不一致等情况。


image.png

标红处即为 报错的代码区域

上一篇下一篇

猜你喜欢

热点阅读