我尝试将XMPP框架添加到我的ios项目中,但我无法使其工作。事实证明我添加错误,所以我尝试删除它,现在没有XMPP我收到这些错误: 提前致谢!
答案 0 :(得分:14)
由于CocoaPods
,也可能发生这种情况。我在版本cocoapods-0.39.0
时出现此问题,目前已降级为cocoapods-0.38.2
修复此问题。
答案 1 :(得分:5)
您的项目中有两份AFNetworking副本。删除其中一个。
...或者更好的是,使用CocoaPods将AFNetworking和您的XMPP框架集成到您的项目中。
答案 2 :(得分:2)
答案 3 :(得分:2)
我将Obj-c中的类重构为Swift后出现此错误,虽然类名称不同但方法名称保持不变,因此导致"属性具有先前声明"错误。但只有当我尝试在不同的目标上运行应用程序时。
所以我只是从项目中删除重构的类并清理项目,为我解决问题。
答案 4 :(得分:1)
其中一个原因是您有重复的.h或.m文件。
临时解决方法是只在Xcode中选择项目,右键单击并点击“在Finder中显示”。
搜索给你错误的文件。
你会找到两个这个名字的文件。
只需删除一个就可以了。
答案 5 :(得分:1)
当我将整个XCode项目复制并粘贴到另一个位置并在那里打开时,我遇到了同样的问题。可能有项目设置和类的默认路径。尝试创建一个新项目,并将每个类单独复制并粘贴到新项目中,并正确创建。
答案 6 :(得分:1)
错误是您的界面类的重复接口定义。这对我有用duplicate interface declaration for class。不知何故,你设法导入.h文件两次。检查以确保始终使用#import而不是#include。
答案 7 :(得分:0)
我认为这不会解决您的特定问题,但是对于通过Google到达此地的其他人来说,该问题是由自定义框架中嵌入式类的名称冲突引起的。导致此类错误的代码示例:
public class Car: NSObject {
public class Wheel: NSObject {
}
}
public class Truck: NSObject {
public class Wheel: NSObject {
// "Wheel" class is duplicated and even though it's embedded in another class,
// it will still result in a collision in a ".h" file
}
}
我实际上不确定从NSObject
继承是否会在此处进行任何更改。