duplicate symbol _OBJC_问题汇总

2019-05-24  本文已影响0人  lc_nicky

 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的实现。修改一下方法的名字就可以了。

上一篇 下一篇

猜你喜欢

热点阅读