Xcode генерирует ошибки подкласса NSManagedObject - PullRequest
0 голосов
/ 06 марта 2012

У меня куча ошибок для сгенерированных объектов модели:

ExerciseSet.h

1  @class Exercise;
2 
3  @interface ExerciseSet : NSManagedObject
4 
5  @property (nonatomic, retain) NSNumber * order;
6  @property (nonatomic, retain) NSNumber * reps;
7  @property (nonatomic, retain) NSNumber * weight;
8  @property (nonatomic, retain) Exercise *belongsTo;
9
10 @end
  • Illegal interface qualifier в строке 1.
  • Expected identifier or '(' в строке 3.
  • Unknown type name 'Exercise' в строке 8
  • Property with 'retain (or strong)' attribute must be of object type в строке 8.
  • Предупреждение для всех свойств, не вызывающих @synthesize,или @dynamic (которые, конечно, называются)

Exercise.h

1  @class ExerciseName, ExerciseSet, Workout, WorkoutMethod;
2
3  @interface Exercise : NSManagedObject
4
5  @property (nonatomic, retain) NSString * notes;
6  @property (nonatomic, retain) NSDecimalNumber * restBetweenSets;
7  @property (nonatomic, retain) NSNumber * rmMethod;
8  @property (nonatomic, retain) NSDecimalNumber * rmResult;
9  @property (nonatomic, retain) Workout *belongsTo;
10 @property (nonatomic, retain) NSSet *hasSet;
11 @property (nonatomic, retain) WorkoutMethod *isDoneWith;
12 @property (nonatomic, retain) ExerciseName *takesNameFrom;
13 @end
14 
15 @interface Exercise (CoreDataGeneratedAccessors)
16 
17 - (void)addHasSetObject:(ExerciseSet *)value;
18 - (void)removeHasSetObject:(ExerciseSet *)value;
19 - (void)addHasSet:(NSSet *)values;
20 - (void)removeHasSet:(NSSet *)values;
21 @end
  • Illegal interface qualifier в строке 1.
  • Missing @end в строке 3.
  • Unknown type name 'Workout' в строке 9.
  • и т. д.

Другие интерфейсы, объявленные в будущем, в порядке, без проблем и ошибок.

Что может вызвать такое поведение?

Ответы [ 3 ]

1 голос
/ 10 декабря 2013

У меня была такая же проблема, оказалось, что один из моих .h файлов отсутствовал @end Вот почему регенерация ваших NSManagedObjects работала.

0 голосов
/ 08 марта 2012

Я обновился до Xcode 4.3, восстановил подклассы NSManagedObject и ошибки исчезли. Должно быть, это ошибка в Xcode.

Спасибо за вашу помощь в любом случае!

0 голосов
/ 06 марта 2012

Можете ли вы указать здесь, как определяется упражнение?Ваш код кажется правильным, но кажется, что у вас есть ошибка в классе Упражнение

Тем временем попробуйте изменить

@class Exercise

Для:

#import "Exercise.h"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...