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.