Update Maven plugin versions and tidy POM files
Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/5954ecd4 Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/5954ecd4 Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/5954ecd4 Branch: refs/heads/master Commit: 5954ecd4448deb4139b5d00149245204b5331a6f Parents: 54af993 Author: Andrew Kennedy <[email protected]> Authored: Tue Jun 2 16:53:34 2015 +0100 Committer: Andrew Kennedy <[email protected]> Committed: Tue Jun 2 22:18:39 2015 +0100 ---------------------------------------------------------------------- pom.xml | 153 ++++++++++--------- usage/dist/pom.xml | 2 - .../main/config/build-distribution-archive.xml | 1 + .../src/main/config/build-distribution-dir.xml | 1 + usage/downstream-parent/pom.xml | 130 +++++++++------- .../brooklyn/util/maven/MavenArtifactTest.java | 8 +- 6 files changed, 156 insertions(+), 139 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/5954ecd4/pom.xml ---------------------------------------------------------------------- diff --git a/pom.xml b/pom.xml index 7b3af40..430bc3a 100644 --- a/pom.xml +++ b/pom.xml @@ -23,7 +23,7 @@ <parent> <groupId>org.apache</groupId> <artifactId>apache</artifactId> - <version>14</version> + <version>17</version> </parent> <groupId>org.apache.brooklyn</groupId> @@ -113,8 +113,8 @@ <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <!-- Testing --> - <cobertura.plugin.version>2.5.2</cobertura.plugin.version> - <surefire.version>2.18</surefire.version> + <cobertura.plugin.version>2.7</cobertura.plugin.version> + <surefire.version>2.18.1</surefire.version> <plantuml.version>6121</plantuml.version> <ant.version>1.8.4</ant.version> <includedTestGroups /> @@ -645,20 +645,27 @@ <pluginManagement> <plugins> <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <version>2.4.1</version> + <artifactId>maven-antrun-plugin</artifactId> + <version>1.8</version> </plugin> <plugin> - <artifactId>maven-antrun-plugin</artifactId> - <version>1.7</version> + <artifactId>maven-archetype-plugin</artifactId> + <version>2.3</version> + </plugin> + <plugin> + <artifactId>maven-assembly-plugin</artifactId> + <version>2.5.4</version> + <configuration> + <tarLongFileMode>gnu</tarLongFileMode> + </configuration> </plugin> <plugin> <artifactId>maven-clean-plugin</artifactId> - <version>2.5</version> + <version>2.6.1</version> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> - <version>3.1</version> + <version>3.3</version> <configuration> <source>${java.version}</source> <target>${java.version}</target> @@ -669,37 +676,45 @@ <version>2.8.2</version> </plugin> <plugin> - <artifactId>maven-enforcer-plugin</artifactId> - <version>1.3.1</version> + <artifactId>maven-eclipse-plugin</artifactId> + <version>2.10</version> + <configuration> + <additionalProjectnatures> + <projectnature>org.eclipse.jdt.groovy.core.groovyNature</projectnature> + </additionalProjectnatures> + </configuration> </plugin> <plugin> - <artifactId>maven-failsafe-plugin</artifactId> - <version>2.17</version> + <artifactId>maven-enforcer-plugin</artifactId> + <version>1.4</version> </plugin> <plugin> - <artifactId>maven-jar-plugin</artifactId> - <!-- NB: if this version is changed, update the MavenArtifactTest. - v2.4+ seems to break eclipse integration as per https://github.com/tesla/m2eclipse-extras/issues/10 --> - <version>2.3.2</version> + <artifactId>maven-failsafe-plugin</artifactId> + <version>2.18.1</version> </plugin> <plugin> - <artifactId>maven-source-plugin</artifactId> - <version>2.3</version> - <inherited>true</inherited> + <artifactId>maven-gpg-plugin</artifactId> + <version>1.6</version> <executions> <execution> - <id>attach-sources</id> + <id>sign-artifacts</id> <phase>verify</phase> <goals> - <goal>jar-no-fork</goal> + <goal>sign</goal> </goals> </execution> </executions> </plugin> <plugin> + <artifactId>maven-jar-plugin</artifactId> + <!-- version 2.4+ seems to break eclipse integration as per https://github.com/tesla/m2eclipse-extras/issues/10 + but cannot find issue on GitHub any more - 404 error --> + <!-- XXX if this version is changed, update the MavenArtifactTest --> + <version>2.6</version> + </plugin> + <plugin> <artifactId>maven-javadoc-plugin</artifactId> - <version>2.9.1</version> - <inherited>true</inherited> + <version>2.10.3</version> <configuration> <!-- disabling use because of NPE deploying to sonatype: http://stackoverflow.com/questions/888199/why-does-maven-install-fail-during-javadoc-generation @@ -732,24 +747,11 @@ </executions> </plugin> <plugin> - <artifactId>maven-gpg-plugin</artifactId> - <version>1.5</version> - <executions> - <execution> - <id>sign-artifacts</id> - <phase>verify</phase> - <goals> - <goal>sign</goal> - </goals> - </execution> - </executions> - </plugin> - <plugin> + <artifactId>maven-release-plugin</artifactId> + <version>2.5.2</version> <!-- 'release' is not used; easier just to checkout, tag, `mvn deploy` manually with -Dbrooklyn.deployTo=TARGET ... and note we need to update docs and examples, which is a non-maven task!) --> - <artifactId>maven-release-plugin</artifactId> - <version>2.5</version> <configuration> <mavenExecutorId>forked-path</mavenExecutorId> <useReleaseProfile>false</useReleaseProfile> @@ -759,7 +761,7 @@ </plugin> <plugin> <artifactId>maven-resources-plugin</artifactId> - <version>2.6</version> + <version>2.7</version> </plugin> <plugin> <artifactId>maven-shade-plugin</artifactId> @@ -788,53 +790,53 @@ </executions> </plugin> <plugin> - <artifactId>maven-surefire-plugin</artifactId> - <version>${surefire.version}</version> - <configuration> - <argLine>-Xms768m -Xmx768m -XX:MaxPermSize=256m -verbose:gc</argLine> - </configuration> - </plugin> - <plugin> <artifactId>maven-site-plugin</artifactId> <version>3.4</version> </plugin> <plugin> - <artifactId>maven-eclipse-plugin</artifactId> - <version>2.9</version> - <configuration> - <additionalProjectnatures> - <projectnature>org.eclipse.jdt.groovy.core.groovyNature</projectnature> - </additionalProjectnatures> - </configuration> + <artifactId>maven-source-plugin</artifactId> + <version>2.4</version> + <executions> + <execution> + <id>attach-sources</id> + <phase>verify</phase> + <goals> + <goal>jar-no-fork</goal> + </goals> + </execution> + </executions> </plugin> <plugin> - <artifactId>maven-archetype-plugin</artifactId> - <version>2.2</version> + <artifactId>maven-surefire-plugin</artifactId> + <version>${surefire.version}</version> + <configuration> + <argLine>-Xms768m -Xmx768m -XX:MaxPermSize=256m -verbose:gc</argLine> + </configuration> </plugin> <plugin> <groupId>org.apache.felix</groupId> <artifactId>maven-bundle-plugin</artifactId> - <version>2.3.4</version> + <version>2.5.4</version> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>findbugs-maven-plugin</artifactId> - <version>2.3.2</version> + <version>3.0.1</version> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> - <version>1.7</version> + <version>1.9.1</version> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> - <artifactId>cobertura</artifactId> + <artifactId>cobertura-maven-plugin</artifactId> <version>${cobertura.plugin.version}</version> </plugin> <plugin> <groupId>com.google.code.maven-replacer-plugin</groupId> <artifactId>maven-replacer-plugin</artifactId> - <version>1.4.0</version> + <version>1.4.1</version> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> @@ -844,7 +846,21 @@ <getRevisionOnlyOnce>true</getRevisionOnlyOnce> </configuration> </plugin> - <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.--> + <plugin> + <groupId>org.apache.rat</groupId> + <artifactId>apache-rat-plugin</artifactId> + <configuration> + <excludes combine.children="append"> + <!-- Exclude sandbox because not part of distribution: not in tgz, and not uploaded to maven-central --> + <exclude>sandbox/**</exclude> + <!-- Exclude netbeans config files (not part of the project, but often on users' drives --> + <exclude>**/nbactions.xml</exclude> + <exclude>**/nb-configuration.xml</exclude> + </excludes> + </configuration> + </plugin> + + <!-- This is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.--> <plugin> <groupId>org.eclipse.m2e</groupId> <artifactId>lifecycle-mapping</artifactId> @@ -1006,19 +1022,6 @@ </lifecycleMappingMetadata> </configuration> </plugin> - <plugin> - <groupId>org.apache.rat</groupId> - <artifactId>apache-rat-plugin</artifactId> - <configuration> - <excludes combine.children="append"> - <!-- Exclude sandbox because not part of distribution: not in tgz, and not uploaded to maven-central --> - <exclude>sandbox/**</exclude> - <!-- Exclude netbeans config files (not part of the project, but often on users' drives --> - <exclude>**/nbactions.xml</exclude> - <exclude>**/nb-configuration.xml</exclude> - </excludes> - </configuration> - </plugin> </plugins> </pluginManagement> http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/5954ecd4/usage/dist/pom.xml ---------------------------------------------------------------------- diff --git a/usage/dist/pom.xml b/usage/dist/pom.xml index ff0db95..5b42073 100644 --- a/usage/dist/pom.xml +++ b/usage/dist/pom.xml @@ -87,7 +87,6 @@ <descriptor>src/main/config/build-distribution-dir.xml</descriptor> </descriptors> <finalName>brooklyn</finalName> - <useProjectArtifact>false</useProjectArtifact> </configuration> </execution> <execution> @@ -102,7 +101,6 @@ <descriptor>src/main/config/build-distribution-archive.xml</descriptor> </descriptors> <finalName>brooklyn-${project.version}</finalName> - <useProjectArtifact>false</useProjectArtifact> </configuration> </execution> </executions> http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/5954ecd4/usage/dist/src/main/config/build-distribution-archive.xml ---------------------------------------------------------------------- diff --git a/usage/dist/src/main/config/build-distribution-archive.xml b/usage/dist/src/main/config/build-distribution-archive.xml index 805d291..e02cc44 100644 --- a/usage/dist/src/main/config/build-distribution-archive.xml +++ b/usage/dist/src/main/config/build-distribution-archive.xml @@ -80,6 +80,7 @@ <!-- TODO include examples --> <dependencySets> <dependencySet> + <useProjectArtifact>false</useProjectArtifact> <outputDirectory>/lib/brooklyn</outputDirectory> <fileMode>0644</fileMode> <directoryMode>0755</directoryMode> http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/5954ecd4/usage/dist/src/main/config/build-distribution-dir.xml ---------------------------------------------------------------------- diff --git a/usage/dist/src/main/config/build-distribution-dir.xml b/usage/dist/src/main/config/build-distribution-dir.xml index a7a8b56..c8c238f 100644 --- a/usage/dist/src/main/config/build-distribution-dir.xml +++ b/usage/dist/src/main/config/build-distribution-dir.xml @@ -80,6 +80,7 @@ <!-- TODO include examples --> <dependencySets> <dependencySet> + <useProjectArtifact>false</useProjectArtifact> <outputDirectory>/lib/brooklyn</outputDirectory> <fileMode>0644</fileMode> <directoryMode>0755</directoryMode> http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/5954ecd4/usage/downstream-parent/pom.xml ---------------------------------------------------------------------- diff --git a/usage/downstream-parent/pom.xml b/usage/downstream-parent/pom.xml index 0c968a9..279f3a9 100644 --- a/usage/downstream-parent/pom.xml +++ b/usage/downstream-parent/pom.xml @@ -7,9 +7,9 @@ to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at - + http://www.apache.org/licenses/LICENSE-2.0 - + Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY @@ -24,7 +24,13 @@ <artifactId>brooklyn-downstream-parent</artifactId> <version>0.7.0-SNAPSHOT</version> <!-- BROOKLYN_VERSION --> <packaging>pom</packaging> - + + <parent> + <groupId>org.sonatype.oss</groupId> + <artifactId>oss-parent</artifactId> + <version>9</version> + </parent> + <name>Brooklyn Downstream Project Parent</name> <description> Parent pom that can be used by downstream projects that use Brooklyn, @@ -42,7 +48,7 @@ <surefire.version>2.18</surefire.version> <includedTestGroups /> <excludedTestGroups>Integration,Acceptance,Live,Live-sanity,WIP</excludedTestGroups> - + <!-- Dependencies --> <brooklyn.version>0.7.0-SNAPSHOT</brooklyn.version> <!-- BROOKLYN_VERSION --> <!-- versions should match those used by Brooklyn, to avoid conflicts --> @@ -64,7 +70,7 @@ <dependencyManagement> <dependencies> <dependency> - <!-- this would pull in all brooklyn entities and clouds; + <!-- this would pull in all brooklyn entities and clouds; you can cherry pick selected ones instead (for a smaller build) --> <groupId>org.apache.brooklyn</groupId> <artifactId>brooklyn-all</artifactId> @@ -72,15 +78,15 @@ </dependency> </dependencies> </dependencyManagement> - + <dependencies> <dependency> <!-- this gives us flexible and easy-to-use logging; just edit logback-custom.xml! --> <groupId>org.apache.brooklyn</groupId> <artifactId>brooklyn-logback-xml</artifactId> <version>${brooklyn.version}</version> - <!-- optional so that this project has logging; dependencies may redeclare or supply their own; - provided so that it isn't put into the assembly (as it supplies its own explicit logback.xml); + <!-- optional so that this project has logging; dependencies may redeclare or supply their own; + provided so that it isn't put into the assembly (as it supplies its own explicit logback.xml); see Logging in the Brooklyn website/userguide for more info --> <optional>true</optional> <scope>provided</scope> @@ -139,8 +145,19 @@ <pluginManagement> <plugins> <plugin> + <artifactId>maven-assembly-plugin</artifactId> + <version>2.5.4</version> + <configuration> + <tarLongFileMode>gnu</tarLongFileMode> + </configuration> + </plugin> + <plugin> + <artifactId>maven-clean-plugin</artifactId> + <version>2.6.1</version> + </plugin> + <plugin> <artifactId>maven-compiler-plugin</artifactId> - <version>3.1</version> + <version>3.3</version> <configuration> <source>${java.version}</source> <target>${java.version}</target> @@ -151,57 +168,49 @@ <version>2.8.2</version> </plugin> <plugin> - <artifactId>maven-enforcer-plugin</artifactId> - <version>1.3.1</version> + <artifactId>maven-eclipse-plugin</artifactId> + <version>2.10</version> </plugin> <plugin> - <artifactId>maven-failsafe-plugin</artifactId> - <version>2.17</version> + <artifactId>maven-enforcer-plugin</artifactId> + <version>1.4</version> </plugin> <plugin> - <artifactId>maven-jar-plugin</artifactId> - <version>2.5</version> + <artifactId>maven-failsafe-plugin</artifactId> + <version>2.18.1</version> </plugin> <plugin> - <groupId>org.apache.felix</groupId> - <artifactId>maven-bundle-plugin</artifactId> - <version>2.3.4</version> + <artifactId>maven-gpg-plugin</artifactId> + <version>1.6</version> </plugin> <plugin> - <artifactId>maven-resources-plugin</artifactId> + <artifactId>maven-jar-plugin</artifactId> <version>2.6</version> </plugin> <plugin> - <artifactId>maven-source-plugin</artifactId> - <version>2.3</version> + <artifactId>maven-javadoc-plugin</artifactId> + <version>2.10.3</version> </plugin> <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <version>2.4.1</version> + <artifactId>maven-release-plugin</artifactId> + <version>2.5.2</version> </plugin> <plugin> - <artifactId>maven-clean-plugin</artifactId> - <version>2.5</version> + <artifactId>maven-resources-plugin</artifactId> + <version>2.7</version> </plugin> <plugin> - <artifactId>maven-eclipse-plugin</artifactId> - <version>2.9</version> + <artifactId>maven-source-plugin</artifactId> + <version>2.4</version> </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> - <version>${surefire.version}</version> + <version>2.18.1</version> </plugin> <plugin> - <artifactId>maven-javadoc-plugin</artifactId> - <version>2.9.1</version> - </plugin> - <plugin> - <artifactId>maven-gpg-plugin</artifactId> - <version>1.5</version> - </plugin> - <plugin> - <artifactId>maven-release-plugin</artifactId> - <version>2.5</version> + <groupId>org.apache.felix</groupId> + <artifactId>maven-bundle-plugin</artifactId> + <version>2.3.4</version> </plugin> <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.--> <plugin> @@ -332,7 +341,7 @@ <plugin> <artifactId>maven-resources-plugin</artifactId> </plugin> - + <plugin> <artifactId>maven-eclipse-plugin</artifactId> <configuration> @@ -341,7 +350,7 @@ </additionalProjectnatures> </configuration> </plugin> - + <plugin> <artifactId>maven-surefire-plugin</artifactId> <configuration> @@ -378,7 +387,7 @@ </build> <profiles> - + <profile> <id>Tests</id> <activation> @@ -405,7 +414,7 @@ </plugins> </build> </profile> - + <!-- run Integration tests with -PIntegration --> <profile> <id>Integration</id> @@ -423,7 +432,7 @@ <excludedTestGroups>Acceptance,WIP</excludedTestGroups> </properties> </profile> - + <!-- run Live-sanity tests with -PLive-sanity --> <profile> <id>Live-sanity</id> @@ -450,10 +459,10 @@ <!-- Make release build (e.g. for Sonatype) with -PRelease - Note that a sonatype release requires signed artifacts, javadoc and source jars; + Note that a sonatype release requires signed artifacts, javadoc and source jars; this snippet doesn't do everything, as you need to set up a key etc, but it should get you a long way there (and prevent maven faffing). - If you don't deploy you can delete or ignore this (it has no effect unless you + If you don't deploy you can delete or ignore this (it has no effect unless you enter -PRelease). --> <profile> @@ -485,8 +494,8 @@ <artifactId>maven-javadoc-plugin</artifactId> <inherited>true</inherited> <configuration> - <!-- disable 'use' reporting because of NPE deploying to sonatype: - http://stackoverflow.com/questions/888199/why-does-maven-install-fail-during-javadoc-generation + <!-- disable 'use' reporting because of NPE deploying to sonatype: + http://stackoverflow.com/questions/888199/why-does-maven-install-fail-during-javadoc-generation http://bugs.sun.com/bugdatabase/view_bug.do;jsessionid=ac084ab7f47c4e7f1df2117cecd?bug_id=5101868 --> <use>false</use> <links> @@ -579,7 +588,7 @@ <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> - <manifestFile> ${project.build.outputDirectory}/META-INF/MANIFEST.MF </manifestFile> + <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile> </archive> </configuration> </plugin> @@ -589,25 +598,30 @@ <!-- different properties used to deploy to different locations depending on profiles; default is cloudsoft filesystem repo, but some sources still use cloudsoft artifactory as source - (and soon we will support artifactory) + and soon we will support artifactory. use this profile for the ASF repositories and + sonatype-oss-release profile for the Sonatype OSS repositories. --> <profile> - <id>sonatype-nexus-repo</id> - <activation> <property><name>brooklyn.deployTo</name><value>sonatype</value></property> </activation> + <id>apache-release</id> + <activation> + <property> + <name>brooklyn.deployTo</name> + <value>apache</value> + </property> + </activation> <distributionManagement> <repository> - <id>sonatype-nexus-staging</id> - <name>Nexus Release Repository</name> - <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url> + <id>apache.releases.https</id> + <name>Apache Release Distribution Repository</name> + <url>https://repository.apache.org/service/local/staging/deploy/maven2</url> </repository> <snapshotRepository> - <id>sonatype-nexus-snapshots</id> - <name>Sonatype Nexus Snapshots</name> - <url>https://oss.sonatype.org/content/repositories/snapshots/</url> + <id>apache.snapshots.https</id> + <name>Apache Development Snapshot Repository</name> + <url>https://repository.apache.org/content/repositories/snapshots</url> </snapshotRepository> </distributionManagement> </profile> - </profiles> </project> http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/5954ecd4/utils/common/src/test/java/brooklyn/util/maven/MavenArtifactTest.java ---------------------------------------------------------------------- diff --git a/utils/common/src/test/java/brooklyn/util/maven/MavenArtifactTest.java b/utils/common/src/test/java/brooklyn/util/maven/MavenArtifactTest.java index 7087041..09d3a55 100644 --- a/utils/common/src/test/java/brooklyn/util/maven/MavenArtifactTest.java +++ b/utils/common/src/test/java/brooklyn/util/maven/MavenArtifactTest.java @@ -38,7 +38,7 @@ public class MavenArtifactTest { // only *integration* tests require these to be *installed*; // note this may vary from machine to machine so version should be aligned with that in parent pom - final static String MAVEN_JAR_PLUGIN_COORDINATE = "org.apache.maven.plugins:maven-jar-plugin:jar:2.3.2"; + final static String MAVEN_JAR_PLUGIN_COORDINATE = "org.apache.maven.plugins:maven-jar-plugin:jar:2.6"; final static String THIS_PROJECT_COORDINATE = "org.apache.brooklyn:brooklyn-utils-common:jar:0.7.0-SNAPSHOT"; // BROOKLYN_VERSION // Don't need to be installed, only used as examples @@ -51,13 +51,13 @@ public class MavenArtifactTest { Assert.assertEquals(m.getGroupId(), "org.apache.maven.plugins"); Assert.assertEquals(m.getArtifactId(), "maven-jar-plugin"); - Assert.assertEquals(m.getVersion(), "2.3.2"); + Assert.assertEquals(m.getVersion(), "2.6"); Assert.assertEquals(m.getPackaging(), "jar"); Assert.assertEquals(m.getClassifier(), null); Assert.assertEquals(m.getCoordinate(), MAVEN_JAR_PLUGIN_COORDINATE); - Assert.assertEquals(m.getFilename(), "maven-jar-plugin-2.3.2.jar"); + Assert.assertEquals(m.getFilename(), "maven-jar-plugin-2.6.jar"); Assert.assertEquals(m.isSnapshot(), false); } @@ -84,7 +84,7 @@ public class MavenArtifactTest { String localPath = new MavenRetriever().getLocalPath(m); Assert.assertTrue(localPath.endsWith( - "/repository/org/apache/maven/plugins/maven-jar-plugin/2.3.2/maven-jar-plugin-2.3.2.jar"), + "/repository/org/apache/maven/plugins/maven-jar-plugin/2.6/maven-jar-plugin-2.6.jar"), localPath); }
