duplicate symbol _OBJC_问题汇总

 1.看看项目里面的.h文件是不是导入了.m文件 把.m改成.h或者@class

 2.看看是不是有同名文件,或者看看同一个类是不是实现了两次,即有两个@implementation。通过全局搜索去查找。

 3.Targets的Build Phases设置项目里,查看Complie Sources这一项,看看是否有同一个文件被引入两次。


以上方法皆不成功时,我们追溯到报错原因

>duplicate symbol _OBJC_IVAR_$_SZSlider._lastBounds in:

>../KF5SDK(KFPlayerController.o)

>../MAPreviewController.framework/MAPreviewController(MAPlayerController.o)

英文翻译过来:再KFPlayerController和MAPlayerController中,重复定义一个OC的变量SZSlider。


可以看到两个类里面都定义了 重复定义一个OC的变量SZSlider变量。修改一下名字就可以了


> duplicate symbol _OBJC_CLASS_$_SwipeUpInteractiveTransition

> ../KF5SDK.framework/KF5SDK(KFPreviewController.o)

>../MAPreviewController.framework/MAPreviewController(MAPreviewController.o)

英文翻译过来重复定义了oc的类:_SwipeUpInteractiveTransition


可以看到两个类里面都定义了 SwipeUpInteractiveTransition的实现。修改一下方法的名字就可以了。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容