[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
|
[news.eclipse.tools.jdt] Re: Annotations in Eclipse (Europa)
|
"David Goodenough" <david.goodenough@xxxxxxxxxxxxx> wrote in message
news:fbr3kt$ai3$2@xxxxxxxxxxxxxxxxxxxx
> Would I be better off writing to the Java5 version, or do you think
> (assuming 3.3.1) that the Java6 stuff is sufficiently complete to use?
There are two Java 6 implementations in Eclipse, which share some code. One
implementation is used to support the Eclipse batch-mode compiler, that is,
the one that you get if you use "java -jar ecj.jar ..." instead of "javac
...". This one is in pretty solid shape, definitely comparable to javac.
The other is used to support compilation within the IDE, so it's the one
most people see. Unfortunately this one is also the one with the most
holes. It's good enough for people to start exploring writing processors to
the Java 6 interface, which was the main goal; but even in 3.3.1 it's very
easy to hit UnsupportedOperationException("Not Yet Implemented").
With regard to the holes in the IDE implementation: the typesystem code
(javax.lang.model.* packages) is shared between both implementations, so it
is very solid. The Messager implementation is reasonable. Dispatch
(calling the right processor on the right files at the right time) is solid,
but it's missing a lot of niceties, such as the ability to locate processors
on the Java Build Path. The Filer implementation is the weakest link; it
has a lot of missing methods.
-Walter Harley
JDT APT team