You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Feb 26, 2023. It is now read-only.
Repository navigation
This repository was archived by the owner on Feb 26, 2023. It is now read-only.
This is the normal behavior. You can reduce the verbosity of the log file or completely disable it (since 3.3). But eventually it will go away at the first project cleaning.
There is a while loop in the processor for processing enclosing class before the inner class. And the loop stops when everything is generated.
The problem is that in case of an abstract class, we doesn't generate the subclass, so we never generate the inner class subclass and the loop never stops.
To fix this, we can generate subclass for abstract classes (which has already been discussed) or prevent inner class in abstract class.
I see, it makes sense. I do not think we should break the convention of not generating subclasses for abstract classes. I think we should invalidate in this case.
Activity
WonderCsabo commentedon Mar 19, 2015
This is the normal behavior. You can reduce the verbosity of the log file or completely disable it (since 3.3). But eventually it will go away at the first project cleaning.
WonderCsabo commentedon Mar 19, 2015
Sorry, for some reason i skipped this part
This is a problem, it seems the annotation processing made into an infinite loop. Please check your changes, we have to investigate this.
VictorAlbertos commentedon Mar 19, 2015
Ok, I will focus on finding why "tasks ':app:assembleDebug' never finishes" ;)
Thanks!
VictorAlbertos commentedon Mar 19, 2015
I’ve found the problem: creating an static class inside an abstract class breaks the annotation processing:
Without using enhances annotations, I will instantiate this class like this:
WhoIsTheBug.ImTheBug instance = new WhoIsTheBug.ImTheBug();
instance.testMe();
Do you know why this happens?
WonderCsabo commentedon Mar 19, 2015
Great, i can repro with Eclipse and gradle, thanks for the minimal example!
I will debug this. BTW, @yDelouis do you have any idea? I think you worked on inner classes.
yDelouis commentedon Mar 19, 2015
There is a while loop in the processor for processing enclosing class before the inner class. And the loop stops when everything is generated.
The problem is that in case of an abstract class, we doesn't generate the subclass, so we never generate the inner class subclass and the loop never stops.
To fix this, we can generate subclass for abstract classes (which has already been discussed) or prevent inner class in abstract class.
WonderCsabo commentedon Mar 19, 2015
I see, it makes sense. I do not think we should break the convention of not generating subclasses for abstract classes. I think we should invalidate in this case.
WonderCsabo commentedon Mar 22, 2015
@yDelouis WDYT?
yDelouis commentedon Mar 23, 2015
I agree.
WonderCsabo commentedon Mar 24, 2015
@yDelouis if you do not mind i assigned it to you as you worked on the inner classes generation.
yDelouis commentedon Mar 24, 2015
Ok.
WonderCsabo commentedon Apr 20, 2015
I take this over.