Аннотации Android: аннотированный класс Xyz_ не находит оригинал (не удается найти класс символов Xyz)

Я использую последние Android Annotations 2.6 и IntelliJ IDEA. Иногда у меня всегда возникают проблемы с аннотациями/путем к классам/порядком компиляции. Кажется, происходит нерегулярно. Сегодня я скомпилировал проект, затем позже изменил файл res/layout-xml, затем попытался собрать проект и получил сообщение об ошибке.

Но в исходных файлах xml или java нет синтаксических ошибок или чего-либо еще.

Проблема в том, что аннотированный класс не находит свой исходный класс, получая

cannot find symbol class Intro

ошибка.

Структура моего проекта:

/src/
    /app/activity/Intro
    ...
/gen-annotation-processed/
    /app/activity/Intro_
    ...
/gen
    ...

Мои настройки аннотации IDEA:

Путь процессора:

/path/to/project/ext-libs/androidannotations-2.6.jar

Имя FQ процессора:

com.googlecode.androidannotations.AndroidAnnotationProcessor

Исходные папки в модуле Android IDEA проекта:

gen
gen-annotation-processed
src

введите здесь описание изображения

Ошибка входа в IDEA при создании проекта (через IDEA, без ant или maven):

введите здесь описание изображения

(Класс «Intro» существует в папке src и в нем нет ошибок.)

Обновление: теперь у меня все работает, хотя я не уверен, что/где я что-то изменил после того, как поигрался с настройками туда-сюда. На самом деле это может быть просто проблема с IDEA, а не с Android-аннотациями, пока не уверен.

Обычно срабатывает следующее: выполните Rebuild (могут вызвать ошибки компиляции, игнорируйте). Затем выполните сборку (не полную перестройку). По некоторым причинам несколько запусков компиляции не работают должным образом при выполнении перестроения, необходимо выполнить комбинацию перестроения + сборки.


person Mathias Conradt    schedule 14.09.2012    source источник
comment
Это действительно может быть проблема IntelliJ IDEA, конфигурация обработки аннотаций была переписана с нуля для IDEA 12 и должна работать лучше.   -  person CrazyCoder    schedule 14.09.2012


Ответы (3)


Вышеупомянутая проблема была связана с новой системой сборки, представленной в IDEA 12, в сочетании с проблемой AA 2.x, которая тем временем исправлена ​​в AA 3.

Видеть:

(Во всяком случае, как упоминал @outlying, maven - это вообще хорошая идея сделать его независимым от IDE вообще.)

person Mathias Conradt    schedule 22.02.2013
comment
Я все еще вижу проблему. IntelliJ 12.1.4 и AA 3 (по ссылке выше). Все еще вижу ту же ошибку. Раньше было периодически, а теперь постоянно. Невероятно неприятно. Опубликует в своем трекере проблем. - person Neil; 11.07.2013

Вы пробовали эту ссылку http://www.ashokgelal.com/2012/12/setting-up-intellij-idea-12-with-maven-actionbarsherlock-roboelectric-androidannotations/ ?

Для меня это работает как шарм, я смог настроить несколько проектов с AA на IDEA.

person outlying    schedule 22.02.2013
comment
Да, тем временем я также использую maven, однако вышеописанная проблема связана с новой системой сборки, представленной в IDEA 12, в сочетании с проблемой AA 2.x, которая исправлена ​​в AA 3. github.com/excilys/androidannotations/issues/423 и github.com/excilys/androidannotations/issues/471 - person Mathias Conradt; 22.02.2013

Вы должны включить обработку аннотаций Android в Файл-> Другие настройки-> Настройки по умолчанию.

введите здесь описание изображения

person Context    schedule 12.10.2015
comment
Флажок уже установлен. Смотрите принятый ответ, это была ошибка в проекте AndroidAnnotations (еще в 2013 году, уже исправленная во всех более новых версиях). - person Mathias Conradt; 12.10.2015