diff options
Diffstat (limited to 'qpid/java/pom.xml')
-rw-r--r-- | qpid/java/pom.xml | 566 |
1 files changed, 566 insertions, 0 deletions
diff --git a/qpid/java/pom.xml b/qpid/java/pom.xml new file mode 100644 index 0000000000..51671296d0 --- /dev/null +++ b/qpid/java/pom.xml @@ -0,0 +1,566 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + 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. +--> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>12</version> + </parent> + <modelVersion>4.0.0</modelVersion> + + <groupId>org.apache.qpid</groupId> + <artifactId>qpid-project</artifactId> + <version>0.26-SNAPSHOT</version> + <packaging>pom</packaging> + + <!-- ###### TODO ###### + + - Add project details such as Website, Mailing List, SCM. + - Test deploying the modules to a local Nexus instance (overriding the repo properties). + - Dont deploy modules we aren't already doing so. + - Decide on name for this parent module. + - Fix the version numbers in all the modules. + - Align the XML in the pom files consistently, fix whitepsace errors. + - Complete setting properties for the dependency version numbers. + - Use dependancy management sections to control the version numbers. + - Add LICENCE, NOTICE, README files to the binary assemblies. + - Add the test profiles, log4j config etc to a module which can be extracted by the others. + - Then fix log4j configuration property to work with all modules. + - Then fix what the systests/perftests do to copy the test-profiles dir to the encessary location. + - Figure out dependency setup for optional bdbstore tests. + - Add the other test profiles + - Generate HTML reports of the test results + + === Once the Ant build is removed === + - Move all the resources to be in the /src/foo/resources folders. + - Make qpidversion.properties in common be a filtered resource instead of generated. + - Get rid of the antrun-plugin execution in common, directly invoke the required java elements. + - Do the above in the generate-sources-common profile instead of current default config. + - Get rid of the antrun-plugin execution in broker-core, directly invoke the required java elements. + - Fix the tests not to be dependant on the working dir being the java dir. + - Fix the tests not to be dependant on the test config/output dirs being children of qpid.home. + - Remove the QBTC output file mechanics, rely on Surefire to do it? + --> + + <properties> + <!-- dependency version numbers --> + <dojo-version>1.9.1</dojo-version> + + <!-- test dependency version numbers --> + <junit-version>3.8.1</junit-version> + <mockito-version>1.9.0</mockito-version> + + <!-- plugin version numbers --> + <maven-antrun-plugin-version>1.7</maven-antrun-plugin-version> + <maven-assembly-plugin-version>2.4</maven-assembly-plugin-version> + <maven-clean-plugin-version>2.5</maven-clean-plugin-version> + <maven-compiler-plugin-version>3.1</maven-compiler-plugin-version> + <maven-deploy-plugin-version>2.7</maven-deploy-plugin-version> + <maven-docck-plugin-version>1.0</maven-docck-plugin-version> + <maven-enforcer-plugin-version>1.3.1</maven-enforcer-plugin-version> + <maven-failsafe-and-surefire-plugins-version>2.16</maven-failsafe-and-surefire-plugins-version> + <maven-gpg-plugin-version>1.4</maven-gpg-plugin-version> + <maven-install-plugin-version>2.5</maven-install-plugin-version> + <maven-invoker-plugin-version>1.8</maven-invoker-plugin-version> + <maven-jar-plugin-version>2.4</maven-jar-plugin-version> + <maven-javadoc-plugin-version>2.9.1</maven-javadoc-plugin-version> + <maven-plugin-plugin-version>3.2</maven-plugin-plugin-version> + <maven-release-plugin-version>2.3.2</maven-release-plugin-version> + <maven-remote-resources-plugin-version>1.5</maven-remote-resources-plugin-version> + <maven-resources-plugin-version>2.6</maven-resources-plugin-version> + <maven-scm-plugin-version>1.8</maven-scm-plugin-version> + <maven-scm-publish-plugin-version>1.0-beta-2</maven-scm-publish-plugin-version> + <maven-site-plugin-version>3.3</maven-site-plugin-version> + <maven-source-plugin-version>2.2.1</maven-source-plugin-version> + <apache-rat-plugin-version>0.10</apache-rat-plugin-version> + <clirr-maven-plugin-version>2.6</clirr-maven-plugin-version> + <maven-dependency-plugin-version>2.8</maven-dependency-plugin-version> + <javacc-maven-plugin-version>2.6</javacc-maven-plugin-version> + <maven-rar-plugin-version>2.3</maven-rar-plugin-version> + <maven-project-info-reports-plugin-version>2.7</maven-project-info-reports-plugin-version> + + <!-- javac source/target properties --> + <java.source>1.6</java.source> + <java.target>1.6</java.target> + + <!-- enforcer plugin config properties --> + <supported-maven-version-range>[3.0.0,)</supported-maven-version-range> + <supported-test-profiles-regex>(java-mms.0-9-1|java-mms.0-10)</supported-test-profiles-regex> + + <!-- test properties --> + <qpid.home>${basedir}</qpid.home> <!-- override for broker tests --> + <qpid.home.qbtc.output>${qpid.home}/target/qbtc-output</qpid.home.qbtc.output> <!-- override for broker tests --> + <qpid.work>${project.build.directory}/QPID_WORK</qpid.work> + + <profile.excludes.java-mms.0-10>JavaTransientExcludes Java010Excludes</profile.excludes.java-mms.0-10> + <broker.version.java-mms.0-10>v0_10</broker.version.java-mms.0-10> + <qpid.broker_default_amqp_protocol_excludes.java-mms.0-10>AMQP_1_0</qpid.broker_default_amqp_protocol_excludes.java-mms.0-10> + + <profile>java-mms.0-10</profile> + <profile.excludes>${profile.excludes.java-mms.0-10}</profile.excludes> + </properties> + + <dependencies> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>${junit-version}</version> + <scope>test</scope> + </dependency> + + <dependency> + <groupId>org.mockito</groupId> + <artifactId>mockito-all</artifactId> + <version>${mockito-version}</version> + <scope>test</scope> + </dependency> + </dependencies> + + <modules> + <module>amqp-1-0-client</module> + <module>amqp-1-0-client-jms</module> + <module>amqp-1-0-common</module> + <module>broker</module> + <module>broker-core</module> + <module>broker-plugins/access-control</module> + <module>broker-plugins/amqp-0-8-protocol</module> + <module>broker-plugins/amqp-0-10-protocol</module> + <module>broker-plugins/amqp-1-0-protocol</module> + <module>broker-plugins/amqp-msg-conv-0-8-to-0-10</module> + <module>broker-plugins/amqp-msg-conv-0-8-to-1-0</module> + <module>broker-plugins/amqp-msg-conv-0-10-to-1-0</module> + <module>broker-plugins/derby-store</module> + <module>broker-plugins/jdbc-provider-bone</module> + <module>broker-plugins/jdbc-store</module> + <module>broker-plugins/management-http</module> + <module>broker-plugins/management-jmx</module> + <module>broker-plugins/memory-store</module> + <module>common</module> + <module>client</module> + <module>management/common</module> + <module>jca</module> + <module>jca/rar</module> + + <module>tools</module> + <module>management/example</module> + + <module>qpid-test-utils</module> + <module>systests</module> + <module>perftests</module> + + <module>perftests/visualisation-jfc</module> + <module>bdbstore</module> + <module>bdbstore/jmx</module> + <module>bdbstore/systests</module> + </modules> + + <repositories> + <!-- For the BDB JE dependency of the optional bdbstore plugin modules--> + <repository> + <id>oracle.releases</id> + <url>http://download.oracle.com/maven</url> + <layout>default</layout> + <releases> + <enabled>true</enabled> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + </repository> + <!-- For the CSVJDBC dependency of the optional perftests-visualistion-jfc module--> + <repository> + <id>csvjdbc.releases</id> + <url>http://csvjdbc.sourceforge.net/maven2</url> + <layout>default</layout> + <releases> + <enabled>true</enabled> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + </repository> + </repositories> + + <build> + <pluginManagement> + <plugins> + <!-- override the parent pom, set versions etc --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <version>${maven-antrun-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-assembly-plugin</artifactId> + <version>${maven-assembly-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-clean-plugin</artifactId> + <version>${maven-clean-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <version>${maven-compiler-plugin-version}</version> + <configuration> + <source>${java.source}</source> + <target>${java.target}</target> + <optimize>true</optimize> + <showDeprecation>true</showDeprecation> + <showWarnings>true</showWarnings> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-deploy-plugin</artifactId> + <version>${maven-deploy-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-docck-plugin</artifactId> + <version>${maven-docck-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-enforcer-plugin</artifactId> + <version>${maven-enforcer-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-failsafe-plugin</artifactId> + <version>${maven-failsafe-and-surefire-plugins-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-gpg-plugin</artifactId> + <version>${maven-gpg-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-install-plugin</artifactId> + <version>${maven-install-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-invoker-plugin</artifactId> + <version>${maven-invoker-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-jar-plugin</artifactId> + <version>${maven-jar-plugin-version}</version> + <configuration> + <archive> + <manifest> + <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> + <addDefaultImplementationEntries>true</addDefaultImplementationEntries> + </manifest> + </archive> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <version>${maven-javadoc-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-plugin-plugin</artifactId> + <version>${maven-plugin-plugin-version}</version> + </plugin> + <!-- START SNIPPET: release-plugin-configuration --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-release-plugin</artifactId> + <version>${maven-release-plugin-version}</version> + <configuration> + <useReleaseProfile>false</useReleaseProfile> + <goals>deploy</goals> + <arguments>-Papache-release ${arguments}</arguments> + </configuration> + </plugin> + <!-- END SNIPPET: release-plugin-configuration --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-remote-resources-plugin</artifactId> + <version>${maven-remote-resources-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-resources-plugin</artifactId> + <version>${maven-resources-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-scm-plugin</artifactId> + <version>${maven-scm-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-scm-publish-plugin</artifactId> + <version>${maven-scm-publish-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-site-plugin</artifactId> + <version>${maven-site-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-source-plugin</artifactId> + <version>${maven-source-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <version>${maven-failsafe-and-surefire-plugins-version}</version> + </plugin> + <plugin> + <groupId>org.apache.rat</groupId> + <artifactId>apache-rat-plugin</artifactId> + <version>${apache-rat-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>clirr-maven-plugin</artifactId> + <version>${clirr-maven-plugin-version}</version> + </plugin> + + <!-- the below are not in the parent pom --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> + <version>${maven-dependency-plugin-version}</version> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>javacc-maven-plugin</artifactId> + <version>${javacc-maven-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.apache.maven.plugins</groupId> + <artifactId>maven-project-info-reports-plugin</artifactId> + <version>${maven-project-info-reports-plugin-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>create-qbtc-output-dir</id> + <phase>pre-integration-test</phase> + <goals> + <goal>run</goal> + </goals> + <configuration> + <target> + <mkdir dir="${qpid.home.qbtc.output}"/> + </target> + </configuration> + </execution> + </executions> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + <!--version specified in pluginManagement --> + <configuration> + <includes> + <include>**/*Test.java</include> + </includes> + <argLine>-Xmx512m</argLine> + <systemPropertyVariables> + <QPID_HOME>${qpid.home}</QPID_HOME> + <QPID_WORK>${qpid.work}</QPID_WORK> + + <java.naming.factory.initial>org.apache.qpid.jndi.PropertiesFileInitialContextFactory</java.naming.factory.initial> + <java.naming.provider.url>test-profiles${file.separator}test-provider.properties</java.naming.provider.url> + + <broker.config>${qpid.home}/etc/config-systests.json</broker.config> + <messagestore.class.name>org.apache.qpid.server.store.MemoryMessageStore</messagestore.class.name> + <broker.protocol.excludes></broker.protocol.excludes> + <broker.persistent>false</broker.persistent> + + <max_prefetch>1000</max_prefetch> + <qpid.dest_syntax>BURL</qpid.dest_syntax> + + <amqj.logging.level>debug</amqj.logging.level> + <amqj.server.logging.level>debug</amqj.server.logging.level> + <amqj.protocol.logging.level>debug</amqj.protocol.logging.level> + <root.logging.level>warn</root.logging.level> + + <log4j.configuration.file>test-profiles${file.separator}log4j-test.xml</log4j.configuration.file> + <log4j.configuration>file://${basedir}${file.separator}..${file.separator}test-profiles${file.separator}log4j-test.xml</log4j.configuration> + + <log4j.debug>false</log4j.debug> + + <test.port>15672</test.port> + <test.mport>18999</test.mport> + <test.cport>19099</test.cport> + <test.hport>18080</test.hport> + + <test.port.ssl>15671</test.port.ssl> + <test.port.alt>25672</test.port.alt> + <test.port.alt.ssl>25671</test.port.alt.ssl> + + <test.exclude>true</test.exclude> + <test.excludes>Excludes JavaExcludes ${profile}.excludes ${profile.excludes}</test.excludes> + <test.mem>512M</test.mem> + + <profile.clustered>false</profile.clustered> + <broker.virtualhosts-config>${QPID_HOME}${file.separator}etc${file.separator}virtualhosts-systests.xml</broker.virtualhosts-config> + + <!-- Different from the properties files in the Ant build --> + <broker.language>java</broker.language> + <broker.type>internal</broker.type> + + <broker.version>${broker.version.java-mms.0-10}</broker.version> + <qpid.broker_default_amqp_protocol_excludes>${qpid.broker_default_amqp_protocol_excludes.java-mms.0-10}</qpid.broker_default_amqp_protocol_excludes> + <broker.stopped>Exception</broker.stopped> + <broker.command>${qpid.home}/bin/qpid-server -sp @STORE_PATH -st @STORE_TYPE -l @LOG_CONFIG_FILE</broker.command> + + <broker.ready>BRK-1004</broker.ready> + <profile>${profile}</profile> + + <!-- This must be a child of qpid home currently + due to the horrible mechanics of QBTC --> + <test.output>${qpid.home.qbtc.output}</test.output> + </systemPropertyVariables> + </configuration> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-enforcer-plugin</artifactId> + <!--version specified in pluginManagement --> + <executions> + <execution> + <id>enforce-versions-standard-properties</id> + <goals> + <goal>enforce</goal> + </goals> + <configuration> + <rules> + <requireMavenVersion> + <version>${supported-maven-version-range}</version> + </requireMavenVersion> + <requireProperty> + <property>profile</property> + <message>You must set a test profile!</message> + <regex>${supported-test-profiles-regex}</regex> + <regexMessage>You have set an unsupported test profile! Allowed values match: ${supported-test-profiles-regex}</regexMessage> + </requireProperty> + </rules> + <fail>true</fail> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + + <reporting> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-project-info-reports-plugin</artifactId> + <!--While the version is specified in pluginManagement, it has to be set here otherwise the + version specified within the build.plugins section of the parent pom takes precendece --> + <version>${maven-project-info-reports-plugin-version}</version> + <configuration> + <dependencyDetailsEnabled>false</dependencyDetailsEnabled> + <dependencyLocationsEnabled>false</dependencyLocationsEnabled> + </configuration> + </plugin> + </plugins> + </reporting> + + <profiles> + <profile> + <!-- Everything in this profile should already be set above by default in case someone sets an explicit non-test + maven profile, which will disable this activeByDefault profile. This is only here for clarity. --> + <id>java-mms.0-10</id> + <activation> + <activeByDefault>true</activeByDefault> + <property> + <name>profile</name> + <value>java-mms.0-10</value> + </property> + </activation> + <properties> + <profile>java-mms.0-10</profile> + <profile.excludes>${profile.excludes.java-mms.0-10}</profile.excludes> + </properties> + <build> + <plugins> + <plugin> + <artifactId>maven-surefire-plugin</artifactId> + <configuration> + <systemPropertyVariables> + <broker.version>${broker.version.java-mms.0-10}</broker.version> + <qpid.broker_default_amqp_protocol_excludes>${qpid.broker_default_amqp_protocol_excludes.java-mms.0-10}</qpid.broker_default_amqp_protocol_excludes> + </systemPropertyVariables> + </configuration> + </plugin> + </plugins> + </build> + </profile> + + <profile> + <id>java-mms.0-9-1</id> + <activation> + <property> + <name>profile</name> + <value>java-mms.0-9-1</value> + </property> + </activation> + <properties> + <profile>java-mms.0-9-1</profile> + <profile.excludes>JavaTransientExcludes XAExcludes JavaPre010Excludes</profile.excludes> + </properties> + <build> + <plugins> + <plugin> + <artifactId>maven-surefire-plugin</artifactId> + <configuration> + <systemPropertyVariables> + <broker.version>v0_9_1</broker.version> + <qpid.broker_default_amqp_protocol_excludes>AMQP_1_0,AMQP_0_10</qpid.broker_default_amqp_protocol_excludes> + </systemPropertyVariables> + </configuration> + </plugin> + </plugins> + </build> + </profile> + </profiles> + +</project> + |