Hello,

I'd like to propose an extension mecanism for the Eclipse plugin (and
potentially for other plugins).

The sysdeo-tomcat-maven-plugin (mojo project) for example has copie/pasted
the dependency resolution code from eclipse plugin. This was required to
create the .tomcatPlugin configuration file.
If this plugin code could execute *inside* the eclipse plugin as an
EclipseWriter it could benefict from the original code, and also from plugin
updates.

I propose to add a new extensibility feature in the eclipse plugin. Using a
new parameter, or maybe by searching some "extension" file in the plugin
classpath, the eclipse plugin could setup a list of external EclipseWriters
to run.

sample configuration :

<plugin>
     <artifactId>maven-eclipse-plugin</artifactId>
     <configuration>
...
         <extensions>
             <extension>
                 <id>sysdeo-tomcat</id>  <!-- matches some META-INF
metadatas in sysdeo-tomcat-maven-plugin.jar -->
                 <configuration>
                      <!-- extension dependent configuration -->
                 </configuration>
             <extension>
         <extensions>
     </configuration>

     <dependencies>
         <dependency>
              <groupId>org.codehaus.mojo</groupId>
              <artifactId>sysdeo-tomcat-maven-plugin</artifactId>
              <version>x</version>
         </dependency>
     </dependencies>

</plugin>


Beeing added to the plugin classpath, the "plugin-extension" could add it's
EclipseWriters, and maybe other optional components (to setup ProjectNatures
?).

Many other extensions could be added this way to the eclipse plugin :
generate SpringIDE configuration, setup Checkstyle in sync with the
maven-checkstyle configuration, etc.

Another benefict is that the "extension" could benefict from the forked
generate-source execution that the eclipse-plugin runs, to access the list
of multi-project modules.


Any suggestion is welcome.

Nicolas.

Reply via email to