You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2015/10/07 16:10:34 UTC
svn commit: r1707313 [2/2] - in /qpid/java/trunk: ./ broker-codegen/
broker/src/main/assembly/ broker/src/main/assembly/dependency-verification/
client/src/main/assembly/ client/src/main/assembly/dependency-verification/
perftests/src/main/assembly/ pe...
Modified: qpid/java/trunk/pom.xml
URL: http://svn.apache.org/viewvc/qpid/java/trunk/pom.xml?rev=1707313&r1=1707312&r2=1707313&view=diff
==============================================================================
--- qpid/java/trunk/pom.xml (original)
+++ qpid/java/trunk/pom.xml Wed Oct 7 14:10:34 2015
@@ -19,9 +19,9 @@
<modelVersion>4.0.0</modelVersion>
<parent>
- <groupId>org.apache.qpid</groupId>
- <artifactId>qpid-parent</artifactId>
- <version>1.0</version>
+ <groupId>org.apache</groupId>
+ <artifactId>apache</artifactId>
+ <version>16</version>
</parent>
<groupId>org.apache.qpid</groupId>
@@ -30,7 +30,36 @@
<packaging>pom</packaging>
<name>Qpid Java Build</name>
- <description>Apache Qpid Java Build POM</description>
+ <url>http://qpid.apache.org/components</url>
+ <description>Apache Qpid Java Components</description>
+ <inceptionYear>2006</inceptionYear>
+
+ <issueManagement>
+ <system>JIRA</system>
+ <url>https://issues.apache.org/jira/browse/QPID</url>
+ </issueManagement>
+
+ <ciManagement>
+ <system>Jenkins</system>
+ <url>https://builds.apache.org/view/M-R/view/Qpid/</url>
+ </ciManagement>
+
+ <mailingLists>
+ <mailingList>
+ <name>Apache Qpid Users</name>
+ <subscribe>users-subscribe@qpid.apache.org</subscribe>
+ <unsubscribe>users-unsubscribe@qpid.apache.org</unsubscribe>
+ <post>users@qpid.apache.org</post>
+ <archive>http://mail-archives.apache.org/mod_mbox/qpid-users/</archive>
+ </mailingList>
+ <mailingList>
+ <name>Apache Qpid Developers</name>
+ <subscribe>dev-subscribe@qpid.apache.org</subscribe>
+ <unsubscribe>dev-unsubscribe@qpid.apache.org</unsubscribe>
+ <post>dev@qpid.apache.org</post>
+ <archive>http://mail-archives.apache.org/mod_mbox/qpid-dev/</archive>
+ </mailingList>
+ </mailingLists>
<scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/qpid/java/trunk</connection>
@@ -46,6 +75,11 @@
</distributionManagement>
<properties>
+ <minimum-maven-version>3.0.0</minimum-maven-version>
+ <minimum-java-version>1.7.0</minimum-java-version>
+ <java.source>1.7</java.source>
+ <java.target>1.7</java.target>
+
<!-- enforcer plugin config properties -->
<supported-test-profiles-regex>(java-mms.0-9|java-mms.0-9-1|java-mms.0-10|java-bdb.0-9|java-bdb.0-9-1|java-bdb.0-10|java-dby.0-9|java-dby.0-9-1|java-dby.0-10|java-dby-mem.0-9|java-dby-mem.0-9-1|java-dby-mem.0-10|cpp|java-json.0-9-1|java-json.0-10)</supported-test-profiles-regex>
@@ -85,7 +119,44 @@
<slf4j-version>1.7.12</slf4j-version>
<jetty-version>8.1.17.v20150415</jetty-version>
+ <!-- dependency version numbers -->
+ <bonecp-version>0.7.1.RELEASE</bonecp-version>
+ <commons-cli-version>1.2</commons-cli-version>
+ <commons-codec-version>1.9</commons-codec-version>
+ <commons-collections-version>3.2.1</commons-collections-version>
+ <commons-lang-version>2.6</commons-lang-version>
+
+ <geronimo-jms-1-1-version>1.1.1</geronimo-jms-1-1-version>
+ <geronimo-jta-version>1.1.1</geronimo-jta-version>
+ <geronimo-servlet-version>1.0</geronimo-servlet-version>
+ <geronimo-j2ee-connector-version>2.0.0</geronimo-j2ee-connector-version>
+ <geronimo-ejb-version>1.0.1</geronimo-ejb-version>
+ <geronimo-kernel-version>2.2.1</geronimo-kernel-version>
+ <bcel-version>5.2</bcel-version>
+
+ <velocity-version>1.4</velocity-version>
+ <jython-version>2.5.3</jython-version>
+ <csvjdbc-version>1.0.8</csvjdbc-version>
+ <jfreechart-version>1.0.13</jfreechart-version>
+
+ <!-- test dependency version numbers -->
+ <junit-version>4.11</junit-version>
+ <mockito-version>1.9.5</mockito-version>
+ <hamcrest-version>1.3</hamcrest-version>
+
<exec-maven-plugin-version>1.3.2</exec-maven-plugin-version>
+ <javacc-maven-plugin-version>2.6</javacc-maven-plugin-version>
+ <maven-rar-plugin-version>2.3</maven-rar-plugin-version>
+ <license-maven-plugin-version>1.6</license-maven-plugin-version>
+ <jacoco-plugin-version>0.7.0.201403182114</jacoco-plugin-version>
+ <maven-jxr-plugin-version>2.3</maven-jxr-plugin-version>
+ <findbugs-maven-plugin-version>2.5.2</findbugs-maven-plugin-version>
+ <jacoco-plugin-version>0.7.5.201505241946</jacoco-plugin-version>
+ <apache-rat-plugin-version>0.11</apache-rat-plugin-version>
+
+ <!-- These versions needs to be kept in sync with versions in parent pom-->
+ <maven-project-info-reports-plugin-version>2.8</maven-project-info-reports-plugin-version>
+ <maven-failsafe-and-surefire-plugins-version>2.18.1</maven-failsafe-and-surefire-plugins-version>
</properties>
<modules>
@@ -164,11 +235,64 @@
</dependencyManagement>
<build>
+
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>${java.source}</source>
+ <target>${java.target}</target>
+ <optimize>true</optimize>
+ <showDeprecation>true</showDeprecation>
+ <showWarnings>true</showWarnings>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.jacoco</groupId>
+ <artifactId>jacoco-maven-plugin</artifactId>
+ <version>${jacoco-plugin-version}</version>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>license-maven-plugin</artifactId>
+ <version>${license-maven-plugin-version}</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jxr-plugin</artifactId>
+ <version>${maven-jxr-plugin-version}</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-rar-plugin</artifactId>
+ <version>${maven-rar-plugin-version}</version>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>findbugs-maven-plugin</artifactId>
+ <version>${findbugs-maven-plugin-version}</version>
+ </plugin>
+
+ <!-- REMOVE 2 PLUGINS BELOW AFTER CHANGING APACHE PARENT TO V 17 -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-project-info-reports-plugin</artifactId>
+ <version>${maven-project-info-reports-plugin-version}</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-report-plugin</artifactId>
+ <version>${maven-failsafe-and-surefire-plugins-version}</version>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
- <!--version specified in pluginManagement -->
<executions>
<execution>
<id>output-test-properties</id>
@@ -211,7 +335,6 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
- <!--version specified in pluginManagement -->
<configuration>
<includes>
<include>**/*Test.java</include>
@@ -265,9 +388,25 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
- <!--version specified in pluginManagement -->
<executions>
<execution>
+ <id>enforce-minimum-versions</id>
+ <goals>
+ <goal>enforce</goal>
+ </goals>
+ <configuration>
+ <rules>
+ <requireJavaVersion>
+ <version>${minimum-java-version}</version>
+ </requireJavaVersion>
+ <requireMavenVersion>
+ <version>${minimum-maven-version}</version>
+ </requireMavenVersion>
+ </rules>
+ <fail>true</fail>
+ </configuration>
+ </execution>
+ <execution>
<id>enforce-versions-standard-properties</id>
<goals>
<goal>enforce</goal>
@@ -741,6 +880,142 @@
</build>
</profile>
+ <profile>
+ <id>dependency-check</id>
+ <!-- Use this profile with the packaging phase, to perform some checks on the module dependencies.
+
+ Verifies that only the explicitly included licences have been used for any compile or runtime dependencies,
+ and additionally for any modules that set 'dependency-change-verification' true also checks for a change in
+ dependencies against a previous reference output that might signal need for updates to LICENSE and/or NOTICE
+ files included in their binary assembly files.
+ -->
+ <properties>
+ <license-maven-plugin-output-dir>${project.build.directory}/license-maven-plugin</license-maven-plugin-output-dir>
+ <dependency-verification-output-dir>${project.build.directory}/dependency-change-verification</dependency-verification-output-dir>
+ <dependency-verification-generated-file>${dependency-verification-output-dir}/PROCESSED_DEPENDENCIES_INFO</dependency-verification-generated-file>
+ <dependency-verification-reference-file>${basedir}/src/main/assembly/dependency-verification/DEPENDENCIES_REFERENCE</dependency-verification-reference-file>
+ <dependency-change-verification>false</dependency-change-verification>
+ </properties>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>license-maven-plugin</artifactId>
+ <!-- version specified in pluginManagement -->
+ <configuration>
+ <failIfWarning>true</failIfWarning>
+ <excludedScopes>provided</excludedScopes>
+ <outputDirectory>${license-maven-plugin-output-dir}</outputDirectory>
+ <!-- Exclude logback from being checked, it is dual licensed and lists both licenses in META-INF Bundle-License -->
+ <!-- Exclude BCEL from being checked, it is ALv2 but doesnt have the necessary metadata -->
+ <excludedGroups>org.apache.bcel|ch.qos.logback</excludedGroups>
+ <includedLicenses>
+ <includedLicense>Apache Software License, Version 2.0</includedLicense>
+ <includedLicense>The MIT License</includedLicense>
+ <includedLicense>BSD License</includedLicense>
+ <includedLicense>Eclipse Public License - Version 1.0</includedLicense>
+ <includedLicense>Common Public License Version 1.0</includedLicense>
+ <includedLicense>Academic Free License v2.1</includedLicense>
+ </includedLicenses>
+ <licenseMerges>
+ <licenseMerge>Apache Software License, Version 2.0|The Apache Software License, Version 2.0|Apache Software License - Version 2.0|Apache v2|Apache 2|Apache License, Version 2.0</licenseMerge>
+ <licenseMerge>The MIT License|MIT License</licenseMerge>
+ <licenseMerge>BSD License|New BSD|New BSD License</licenseMerge>
+ <licenseMerge>Eclipse Public License - Version 1.0|Eclipse Public License - v 1.0</licenseMerge>
+ </licenseMerges>
+ </configuration>
+ <executions>
+ <execution>
+ <id>check-third-party-licensing</id>
+ <phase>prepare-package</phase>
+ <goals>
+ <goal>add-third-party</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <!--version specified in pluginManagement -->
+ <executions>
+ <execution>
+ <id>dependency-change-verification</id>
+ <phase>prepare-package</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <target if="${dependency-change-verification}">
+ <!-- Set the output location for the generated file -->
+ <condition property="dependency-verification-output-file" value="${dependency-verification-reference-file}" else="${dependency-verification-generated-file}">
+ <istrue value="${update-dependency-reference}" />
+ </condition>
+ <!-- Output the ALv2 header and a title, then append the DEPENDENCIES file contents,
+ processing to strip out the qpid module version info -->
+ <echo>Generating dependency info at: ${dependency-verification-output-file}</echo>
+ <concat destfile="${dependency-verification-output-file}" append="false">
+ <header filtering="no" trimleading="yes">
+ #
+ # Licensed to the Apache Software Foundation (ASF) under one
+ # or more contributor license agreements. See the NOTICE file
+ # distributed with this work for additional information
+ # regarding copyright ownership. The ASF licenses this file
+ # 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
+ # KIND, either express or implied. See the License for the
+ # specific language governing permissions and limitations
+ # under the License.
+ #
+
+ #// ------------------------------------------------------------------
+ # TRIMMED 3RD PARTY DEPENDENCY INFORMATION FOR MODIFICATION CHECKS
+ #
+ </header>
+ <path path="${project.build.outputDirectory}/META-INF/DEPENDENCIES" />
+ </concat>
+
+ <replaceregexp file="${dependency-verification-output-file}" flags="gm" replace="">
+ <regexp id="stripqpidcontentheader" pattern="^\/\/\ .*\n|^Qpid\ .*\n" />
+ </replaceregexp>
+ <replaceregexp file="${dependency-verification-output-file}" flags="gm">
+ <regexp id="stripqpidcontentversions" pattern="(^.*org.apache.qpid:.*:.*):.*" />
+ <substitution expression="\1" />
+ </replaceregexp>
+ <!-- Ensure the reference file is present -->
+ <fail message="Dependency info reference file was not present at: ${dependency-verification-reference-file}. You can generate an initial reference file by running again with -Dupdate-dependency-reference.">
+ <condition>
+ <not>
+ <available file="${dependency-verification-reference-file}" />
+ </not>
+ </condition>
+ </fail>
+ <!-- Compare output to the reference file to check they are the same, fail if they arent -->
+ <echo>Comparing to against reference info at: ${dependency-verification-reference-file}</echo>
+ <fail message="Generated dependency info does not match the reference. Ensure LICENCE and NOTICE files are correct and then update the reference by running again with -Dupdate-dependency-reference. Generated file: '${dependency-verification-output-file}'. Reference file: '${dependency-verification-reference-file}'.">
+ <condition>
+ <not>
+ <filesmatch file1="${dependency-verification-output-file}" file2="${dependency-verification-reference-file}" textfile="true" />
+ </not>
+ </condition>
+ </fail>
+ </target>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
</profiles>
</project>
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org