Control APT compilation errors when using the Eclipse IDE
---------------------------------------------------------

                 Key: BEEHIVE-1143
                 URL: http://issues.apache.org/jira/browse/BEEHIVE-1143
             Project: Beehive
          Issue Type: Bug
          Components: Controls
            Reporter: Chad Schoettger
         Assigned To: Chad Schoettger


There is currently a bug in the Eclipse IDE which can cause some control 
compilations to fail.

See: https://bugs.eclipse.org/bugs/show_bug.cgi?id=155115
Unfortunately this bug will not be fixed until at least the 3.2.2 or 3.3 
Eclipse release later this year or next.

This typically happens when a control in a jar file is extended.  That is:

IN JAR:
Control A
Control B extends A

IN SOURCE:
Control C extends B

If an annotation processor then attempts to look up C's superclass hierarchy 
and read the 
annotation values, any Class values in annotations on classes in the jar file 
(binary bindings) will be unresolved and will thus have defective 
qualifiedName, etc.  

One example of how this manifests itself is when EventSets (or any other inner 
class controls type) is used.  

If Control C extends an EventSet from either Control A or B, the 
com.sun.mirror.declaration.TypeDeclaration.getQualifiedName() method will 
return the following when the TypeDeclaration in question is for Control C:

ControlC.MyEventSet

But when APT starts processing the inherited event sets, say for Control B, the 
following is returned:
ControlB$MyEventSet

The end result is that compilation fails because the inner class event set 
names do not match.  I plan on exploring if there is a workaround available for 
this issue until Eclipse resolves thier bug.






   



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to