For a second I thought I got you ! I didn't notice that, that works for me.
On Thu, Feb 24, 2011 at 10:21 PM, Thomas Heute <theute@redhat.com> wrote:
On 02/24/2011 12:20 PM, aheritier@gmail.com wrote:Oh, still on vacation then ;)
On Thu, Feb 24, 2011 at 6:01 PM, Thomas Heute <theute@redhat.com> wrote:
Now that our Maven expert is back :)He he :-)
Effectively, I'm back and in VN this time :-D
almost :-)Shouldn't we do all ?I plan to do some update in our GateIn parent, the diff below is pretty much self explanatory, but here are the points:
- Removed repositories + pluginRepositories definitions, it's supposed to be a best practice, correct me if I'm wrong (But will require people to have those defined in their local installation or we add them in the root pom.xml instead)
+10000 : It will also increse your build time as more you have repositories in your settings/poms, more maven will loose time to try missing deps or snapshots updates in themIn theory (sorry the wiki is down I hope it is the good link:( ) you should follow this doc and ask gatein community to do it to contribute :- Added JDK 6 as min version
Instead of setting jdk.min.version you should better set maven.compiler.source and maven.compiler.target to 1.6 if this is what is targeted nowYou can see them here : http://anonsvn.jboss.org/repos/maven/poms/jboss-parent-pom/tags/jboss-parent-5/pom.xml
jdk.min.version for the maven checker so that it gives a nice error message if one tries to build with JDK 5 or older and maven.compiler.* to pass to the Java compiler ?
PS: jdk.min.version was defined in GateIn root pom, I just moved it up to the shared parent.
By default in jboss-parent pom you have : <jdk.min.version>${maven.compiler.source}</jdk.min.version>thus it takes the value of compiler source level
Yeah we don't use it I think so we're fineOk, i did the update in parent that gives this as a summarize:
- Removed the Maven release plugin parameters, they are only meaningful for GateIn Portal and not for the components. Plus we added new profiles for new packaging (AS6, AS6, Tomcat 6, Tomcat 7, Jetty). This would be added in the root pom of GateIn Portal
I agree- Removed org.codehaus.mojo:jboss-packaging-maven-plugin declaration, I think it's only to build SAR packages. And SAR packages are only used for a component or 2.
+1
Arnaud, what do you think ?
It's a little bit out of your scope but we should either think to update plugins versions defined in jboss parent pom (we could see with Paul Gier) or override these properties in GateIn. A lot of plugins were updated to take care of Maven 3 and to have a better behavior in // builds for exemple.You can easily find the list of latest versions of plugins with : mvn versions:display-plugin-updates
I may do it but it won't be I think before my travel back from VN (in 10 days)
If you have few time it is easy: You update these versions in gatein parent-pom, you install it, you update locally all your gatein projects to use this SNAPSHOT and you test a full build.
<version.antrun.plugin>1.6</version.antrun.plugin>
<version.clean.plugin>2.4.1</version.clean.plugin>
<version.checkstyle.plugin>2.6</version.checkstyle.plugin>
<version.compiler.plugin>2.3.2</version.compiler.plugin>
<version.dependency.plugin>2.2</version.dependency.plugin>
<version.deploy.plugin>2.5</version.deploy.plugin>
<version.install.plugin>2.3.1</version.install.plugin>
<version.jar.plugin>2.3.1</version.jar.plugin>
<version.surefire.plugin>2.7.2</version.surefire.plugin>
<version.resources.plugin>2.4.3</version.resources.plugin>
<version.war.plugin>2.1.1</version.war.plugin>
<version.ear.plugin>2.5</version.ear.plugin>
<version.site.plugin>2.2</version.site.plugin>
<version.source.plugin>2.1.2</version.source.plugin>
<version.javadoc.plugin>2.7</version.javadoc.plugin>
<version.buildnumber.plugin>1.0-beta-4</version.buildnumber.plugin>
Requires Maven 3, so I didn't update:
[INFO] maven-site-plugin ................................. 2.2 -> 3.0-beta-3
I think we don't use the site thus we don't care. But if you want to be clean there is a tip to be compatible with both versionsYou set the default version to 2.2 like you didAnd you had this profile :<profile> <id>maven-3</id> <activation> <file> <!-- This employs that the basedir expression is only recognized by Maven 3.x (see MNG-2363) --> <exists>${basedir}</exists> </file> </activation> <build> <properties> <version.site.plugin>2.3-beta-3</version.site.plugin> </properties> </build> </profile>More details : https://cwiki.apache.org/MAVEN/maven-3x-and-site-plugin.html
Yes we could move those to the gateIn root (which is parent to all but not parent to the components).
In root pom we should upgrade:
[INFO] org.codehaus.mojo:build-helper-maven-plugin .............. 1.4 -> 1.5
[INFO] org.codehaus.mojo:exec-maven-plugin .................... 1.1.1 -> 1.2
[INFO] org.jibx:maven-jibx-plugin ........................... 1.2.1 -> 1.2.2
We need to specify the plugin version in: web/eXoResources/pom.xml and examples/skins/simpleskin/pom.xml:
[WARNING] The following plugins do not have their version specified:
[WARNING] gr.abiss.mvn.plugins:maven-jstools-plugin .................... 0.7
In packaging/reports/pom.xml we should upgrade:
[INFO] org.jvnet.maven-antrun-extended-plugin:maven-antrun-extended-plugin 1.13 -> 1.41
In testsuite/selenium-snifftests/pom.xml we should upgrade:
[INFO] org.codehaus.mojo:selenium-maven-plugin .................. 1.0 -> 1.1
If they all extends the gatein-parent you can define this versions directly in it instead of hardcoding it in child projects.Like in jboss-parent just declare all missing plugins in build/pluginsManagement/plugins with a property for each version.
Cheers
ArnaudThanks !
Thomas.
cheers
arnaud
Thomas.
Here is the diff:@@ -40,12 +40,11 @@
Index: pom.xml
===================================================================
--- pom.xml (revision 5914)
+++ pom.xml (working copy)
@@ -14,7 +14,7 @@
<groupId>org.gatein</groupId>
<artifactId>gatein-parent</artifactId>
- <version>1.0.3-GA-SNAPSHOT</version>
+ <version>1.1.0-GA-SNAPSHOT</version>
<packaging>pom</packaging>
<scm>
<!-- maven-enforcer-plugin -->
<maven.min.version>2.2.1</maven.min.version>
+ <jdk.min.version>1.6</jdk.min.version>
+
<!-- maven-release-plugin -->
<autoVersionSubmodules>true</autoVersionSubmodules>
- <!-- maven-release-plugin -->
- <arguments>-Prelease,pkg-tomcat,pkg-jbossas -DskipTests</arguments>
-</properties>
<!-- cf http://jira.codehaus.org/browse/MRELEASE-3 -->
<preparationGoals>clean install</preparationGoals>
@@ -60,11 +59,6 @@@@ -167,43 +161,6 @@
<!-- Plugins are sorted by shortname : clean, deploy, ... -->
<plugins>
<plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>jboss-packaging-maven-plugin</artifactId>
- <version>2.0-beta-1</version>
- </plugin>
- <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
</profiles>
<!-- **************** -->
- <!-- Repositiories -->
- <!-- **************** -->
- <repositories>
- <repository>
- <id>jboss-public-repository-group</id>
- <name>JBoss Public Maven Repository Group</name>
- <url>https://repository.jboss.org/nexus/content/groups/public/</url>
- <layout>default</layout>
- <releases>
- <enabled>true</enabled>
- <updatePolicy>never</updatePolicy>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- <updatePolicy>never</updatePolicy>
- </snapshots>
- </repository>
- </repositories>
-
- <pluginRepositories>
- <pluginRepository>
- <id>jboss-public-repository-group</id>
- <name>JBoss Public Maven Repository Group</name>
- <url>https://repository.jboss.org/nexus/content/groups/public/</url>
- <layout>default</layout>
- <releases>
- <enabled>true</enabled>
- <updatePolicy>never</updatePolicy>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- <updatePolicy>never</updatePolicy>
- </snapshots>
- </pluginRepository>
- </pluginRepositories>
-
- <!-- **************** -->
<!-- Reporting -->
<!-- **************** -->