|[eclipse-pmc] Re: Project request for Eclipse 3.3 plug-in|
+1 (bug is: https://bugs.eclipse.org/bugs/show_bug.cgi?id=176537) "Walter Harley" <wharley@xxxxxxx> To 03/06/2007 07:04 <eclipse-pmc@xxxxxxxxxxx> PM cc Philippe P Mulet/France/IBM@IBMFR, "Jess Garms" <jgarms@xxxxxxx> Subject Project request for Eclipse 3.3 plug-in Per discussion with Philippe, and following much work from Olivier and Pascal, the APT team would like to ask the PMC for approval for two additional plug-in projects for Eclipse 3.3: org.eclipse.jdt.apt.pluggable.core org.eclipse.jdt.apt.pluggable.tests The jdt.apt.pluggable.core plug-in will be released as part of the JDT package. The test plug-in is just for testing. Initial committers on these projects should be the same as on org.eclipse.jdt.apt.core, that is, the members of the JDT team plus the members of the APT team. JUSTIFICATION: ================== The jdt.apt.pluggable.core plug-in is responsible for dispatching Java 6 (JSR-269) annotation processors in IDE mode. The name derives from the JSR-269 spec, for "Pluggable Annotation Processing", combined with a desire to keep all APT functionality within a .apt namespace. The full APT architecture, then, will look like this: org.eclipse.jdt.apt.pluggable.tests - plugin, requires 1.6VM; depends on org.eclipse.jdt.apt.pluggable.core. IDE-mode Java 6 tests. org.eclipse.jdt.apt.pluggable.core - plugin, requires 1.6VM; depends on packages exported by org.eclipse.jdt.compiler.apt. Code to dispatch Java 6 annotation processors in IDE. org.eclipse.jdt.compiler.apt.tests - plugin, requires 1.6VM; depends on org.eclipse.jdt.compiler.apt. Batch-mode Java 6 tests, including most of the tests of shared code such as the typesystem. org.eclipse.jdt.compiler.apt - fragment of org.eclipse.jdt.core, requires 1.6VM, has no Platform class references. Shared base code for Java 6 annotation processors, as well as code to dispatch Java 6 processors in batch mode. org.eclipse.jdt.apt.ui - plugin, requires 1.5VM; depends on org.eclipse.jdt.apt.core. Configuration UI for both flavors of annotation processing. (We do not need separate UI for Java 6 processing.) org.eclipse.jdt.apt.tests - plugin, requires 1.5VM; depends on org.eclipse.jdt.apt.core. IDE-mode Java 5 tests. org.eclipse.jdt.apt.core - plugin, requires 1.5VM; depends on org.eclipse.jdt.core. Shared code for both flavors of annotation processing, as well as code to dispatch Java 5 annotation processors in IDE. (Java 5 processing isn't supported in batch mode.) Olivier has sent additional detail on the reasons we have arrived at this particular architecture. The quick answer is that all this complexity is the only way we've found to achieve all the following constraints: - jdt.core compiler must be available for batch-mode compilation on pre-1.5 JDKs - Java Tool interface (JSR199) depends on 1.6 JDK - Java 6 annotation processing (JSR269) must be available via command line and Java Tool interface - Java 6 annotation processing uses data provided by callers of Java Tool interface - Java 6 annotation processing depends on 1.6 JDK - Java 5 annotation processing depends on 1.5 JDK - Java 6 annotation processing shares code and data with Java 5 annotation processing - Releng test framework can only run test plug-ins as JUnit Plug-in Test, i.e. OSGi classloader restrictions are honored The reason for this late request is that we believed until recently that the existing architecture was adequate to meet the constraints; on trying to tie up the loose ends we discovered we were wrong. (It was the final constraint that did us in.) Thanks, -Walter -----Original Message----- From: Philippe P Mulet [mailto:philippe_mulet@xxxxxxxxxx] Sent: Monday, March 05, 2007 1:13 PM To: Walter Harley Subject: Re: APT plug-in Actually, simply send a request to the PMC mailing list. I think we should name these projects "org.eclipse.jdt.apt.pluggable.*" _______________________________________________________________________ Notice: This email message, together with any attachments, may contain information of BEA Systems, Inc., its subsidiaries and affiliated entities, that may be confidential, proprietary, copyrighted and/or legally privileged, and is intended solely for the use of the individual or entity named in this message. If you are not the intended recipient, and have received this message in error, please immediately return this by email and then delete it.
Back to the top