| Summary: | APT does not generate import statements for other generated types | ||
|---|---|---|---|
| Product: | [Eclipse Project] JDT | Reporter: | Michael Bolin <bolinfest> |
| Component: | APT | Assignee: | Generic inbox for the JDT-APT component <jdt-apt-inbox> |
| Status: | CLOSED WONTFIX | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | e.lucash, jarthana |
| Version: | 4.6 | ||
| Target Milestone: | --- | ||
| Hardware: | Macintosh | ||
| OS: | Mac OS X | ||
| Whiteboard: | stalebug | ||
|
Description
Michael Bolin
Thank you Michael for reporting this! It's probably to early to declare any specific problem with ECJ. Let me investigate it on the side of Immutables, I'll get back here to report findings. The problem was in the change in annotation processor classloading in Eclipse. When running in IDE (as opposed to running compiler in a batch mode), Thread.getContextClassLoader() able to provide a classloader that load ECJ-specific classes throught which we access necessary advanced functionality. I believe the changes in classloading was necessary for something important, so we adapted the Immutables annotation processor to use special proxy classloader to work around the change. I would say that this would never be an issue if the annotation processor use only standard apis and never touch compiler internals, but the amount of bugs in both Javac and ECJ, and other discrepancies between the two are too much of a problem and it cannot be dealt with only using standard APIs. This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant. -- The automated Eclipse Genie. Not an issue. At some point, classloading was changed when running ECJ APT in IDE, but the library mentioned Immutables.org was adapted to this change and the issue was resolved. |