Hello all, I have just changed the IT structure for the Jaxb2-Maven-Plugin in Bamboo, in preparation for the release of version 2.0 which is a major plugin upgrade. The change on bamboo reflects a change in requirements for the plugin, and I believe we should approach this in a similar manner for all Mojo Plugins.
*Changed minimum requirements* I would recommend that we migrate to the following requirement for all our plugins: 1. Minimum Maven version 3.0.4 (i.e. drop support for Maven 2.x) 2. Run ITs on JDK 1.6, 1.7 and 1.8 (i.e. require that codebase is compilable with JDK 8, in addition to 6 and 7) *Added Mojo Parent capabilities* Also, I would recommend upgrading the Mojo parent to augment some generic site (and other) capabilities in the following manner (will write JIRAs for this, but I want a discussion first): 1. Include PlantUML diagramming capabilities, such as is done in the latest SNAPSHOT POM of the jaxb2-maven-plugin. PlantUML is a powerful tool and can be used to draw illustrative diagrams of various sorts. This would require two new variables in the Mojo Parent corresponding to the two versions (plantuml and plantuml plugin) seen in the snippet below. 2. Add the depends-maven-plugin to Mojo Parent, to ensure that all of our plugins contain a simple-to-parse listing of all dependencies used to build the plugin - including all transitive dependencies. This would require one new variable in the Mojo Parent corresponding to the plugin version. 3. Define descriptions on how to create JDK 8-compliant JavaDocs. Or - alternatively - disengage the lint checks for JDK 8, to ignore the syntactic problems. The 3 enhancements above correspond to the pom snippet below; I would deem these improvements as completely unintrusive for the plugin and hence not problematic to add. Waddaya say? <!-- Generate maven dependencies listing file --> <plugin> <groupId>org.apache.servicemix.tooling</groupId> <artifactId>depends-maven-plugin</artifactId> <version>1.2</version> <executions> <execution> <id>generate-depends-file</id> <goals> <goal>generate-depends-file</goal> </goals> </execution> </executions> </plugin> <!-- Provides PlantUML integration into site deployments. --> <plugin> <groupId>com.github.jeluard</groupId> <artifactId>plantuml-maven-plugin</artifactId> <version>7954</version> <configuration> <sourceFiles> <directory>${basedir}</directory> <includes> <include>src/site/**/*.puml</include> </includes> </sourceFiles> <outputDirectory>${project.build.directory}/site/images/plantuml</outputDirectory> </configuration> <executions> <execution> <id>generate-plantuml-diagrams</id> <goals> <goal>generate</goal> </goals> <phase>pre-site</phase> </execution> </executions> <dependencies> <dependency> <groupId>net.sourceforge.plantuml</groupId> <artifactId>plantuml</artifactId> <version>8017</version> </dependency> </dependencies> </plugin> -- -- +==============================+ | Bästa hälsningar, | [sw. "Best regards"] | | Lennart Jörelid | EAI Architect & Integrator | | jGuru Europe AB | Mölnlycke - Kista | | Email: l...@jguru.se | URL: www.jguru.se | Phone | (skype): jgurueurope | (intl): +46 708 507 603 | (domestic): 0708 - 507 603 +==============================+