今天导入了网络工具类后 运行项目突然报这错误
Undefined symbols for architecture arm64
xxxxxx ...... 这里省略好几行
当遇到这个问题时,当然报错的最后关键词可能不是arm64 还有可能是armv7、armv7s等,不管怎样 当去搜索类似错误时,网上有各种各样的解决办法,这也说明了导致这个错误原因有多种,所以可以根据网上解决办法都试一下,没准哪个就解决了;
这里分享一下我的解决办法:
先说一下今天做了哪些操作后 然后运行报错的
1.对封装好的网络工具类从别的项目直接拖到了新项目(这一步运行不会报错😊);
2.导入网络工具类头文件(这一步运行也没有报错😊);
3.实现工具类中的方法(报错了💔);
试了很多解决方法之后 最后发现问题原因是:
由于网络工具类那两个文件是从别的地方直接拖进来的而不是手动创建的.h和.m文件,所以在项目配置里面的compile sources这地方没有自动添加.m文件,所以导致了这个坑爹的错误(也有可能是使用了Xcode9 测试版的原因😄);
解决办法:
在Build Phases里找到compile sources这一栏,然后点击+,把缺少的.m添加进来就好了;
如果compile sources这里配置没有错误,请继续寻找其他解决办法......
👌👌👌
更新:
这个问题属于Xcode 9.0的bug,可以下载最新版Xcode (9.1版本已修复)即可解决往项目中拖文件没有自动添加引用的问题;