1

我将 Facebook sdk 代码添加到我的项目中,然后出现此错误,因为我已经有一个 json 库,因此我从计算机和项目中删除了 Facebook json 库,但仍然出现此错误。我在整个项目中搜索“@interface SBJsonBase”,但只得到一个结果。当我只有一个界面时,怎么能说它是重复的?是否包含两次文件?搜索不是总能找到一切吗?

4

5 回答 5

1

这可能有帮助吗?删除您的派生数据并做一个干净的项目,然后尝试再次构建

于 2012-05-23T19:44:55.800 回答
0

我有一个类似的问题。这是一个小的搜索,但我可以在不创建新项目等的情况下解决它......问题是我有一个导入 A 类的 B 类。然后我有一个导入 B 类和 A 类的类。当我这样做了,就出现了这些问题。例如。SOAP Web 服务类导入通过 Web 传递的所有实体。

类 goToSchoolWebservice。

导入“person.h”

导入“学校.h”

...

然后我有一个用于缓存的 Singleton 类,该类具有 Logged in Person 以及对 webservice 类的引用。

导入“person.h”

导入“goToSchoolWebservice.h”

--> 这是哪里出错了!!因此,请注意这些循环引用。它不是那么容易检测到它们!

于 2012-12-06T09:01:40.200 回答
0

如果您使用#include 而不是导入,则使用此技术来最大程度地减少重复项:在界面的开头(实际上就在它之前)检查定义,如果未定义,则定义它并继续定义您的界面。这是一个例子:

 #ifndef __NetworkOptionsViewController__H // check if this has every been imported before
 #define __NetworkOptionsViewController__H


#import "blahblah.h"

 @interface NetworkOptionsViewController : UITableViewController

 {

NSMutableArray* somevariable1;
int somevariable2;


 }
 @end



 #endif

- 就我个人而言,我收到了这个错误,因为我班级的文件路径错误。我检查了文件检查器,我的类文件没有在 Classes 文件夹中定义,即使 IDE 说是。我删除了它们并再次复制它们。

于 2013-03-25T22:00:02.727 回答
0

对于那些仍然收到此错误的人,尽管遵循了标头导入约定:我在导入已从项目中删除的标头时收到此错误。相反,在我的项目的旧备份中找到了丢失的标头(我在 Git 中做一些破坏性的事情之前所做的),并且该文件导致了循环导入。

于 2013-09-17T10:10:37.847 回答
-3

我通过将所有导入移动到前缀头文件解决了类似的问题。

于 2013-06-20T03:34:42.690 回答