<?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>18</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
    <groupId>org.apache.axis2</groupId>
    <artifactId>axis2</artifactId>
    <version>1.8.0-SNAPSHOT</version>
    <packaging>pom</packaging>
    <name>Apache Axis2 - Root</name>
    <inceptionYear>2004</inceptionYear>
    <url>http://axis.apache.org/axis2/java/core/</url>
    <issueManagement>
        <system>jira</system>
        <url>http://issues.apache.org/jira/browse/AXIS2</url>
    </issueManagement>
    <modules>
        <module>modules/resource-bundle</module> <!-- Must be first in the list! -->
        <module>apidocs</module>
        <module>modules/adb</module>
        <module>modules/adb-codegen</module>
        <module>modules/adb-tests</module>
        <module>modules/addressing</module>
        <module>modules/codegen</module>
        <module>modules/fastinfoset</module>
        <module>modules/integration</module>
        <module>modules/java2wsdl</module>
        <module>modules/jibx</module>
        <module>modules/json</module>
        <module>modules/kernel</module>
        <module>modules/mex</module>
        <module>modules/mtompolicy</module>
        <module>modules/mtompolicy-mar</module>
        <module>modules/ping</module>
        <module>modules/samples/version</module>
        <module>modules/soapmonitor/servlet</module>
        <module>modules/soapmonitor/module</module>
        <module>modules/spring</module>
        <module>modules/testutils</module>
        <module>modules/tool/maven-shared</module>
        <module>modules/tool/axis2-aar-maven-plugin</module>
        <module>modules/tool/axis2-ant-plugin</module>
        <module>modules/tool/axis2-eclipse-codegen-plugin</module>
        <module>modules/tool/axis2-eclipse-service-plugin</module>
        <module>modules/tool/axis2-idea-plugin</module>
        <module>modules/tool/axis2-java2wsdl-maven-plugin</module>
        <module>modules/tool/axis2-mar-maven-plugin</module>
        <module>modules/tool/axis2-repo-maven-plugin</module>
        <module>modules/tool/axis2-wsdl2code-maven-plugin</module>
        <module>modules/tool/axis2-xsd2java-maven-plugin</module>
        <module>modules/tool/simple-server-maven-plugin</module>
        <module>modules/tool/archetype/quickstart</module>
        <module>modules/tool/archetype/quickstart-webapp</module>
        <module>modules/webapp</module>
        <module>modules/xmlbeans</module>
        <module>modules/scripting</module>
        <module>modules/jaxbri</module>
        <module>modules/metadata</module>
        <module>modules/saaj</module>
        <module>modules/jaxws</module>
        <module>modules/jaxws-mar</module>
        <module>modules/jaxws-integration</module>
        <module>modules/clustering</module>
        <module>modules/corba</module>
        <module>modules/osgi</module>
        <module>modules/osgi-tests</module>
        <module>modules/transport/local</module>
        <module>modules/transport/http</module>
        <module>modules/transport/http-hc3</module>
        <module>modules/transport/base</module>
        <module>modules/transport/jms</module>
        <module>modules/transport/mail</module>
        <module>modules/transport/tcp</module>
        <module>modules/transport/testkit</module>
        <module>modules/transport/udp</module>
        <module>modules/transport/xmpp</module>
        <module>modules/distribution</module>
        <module>modules/samples</module>
        <module>databinding-tests</module>
        <module>systests</module>
    </modules>
    <profiles>
        <profile>
            <id>apache-release</id>
            <build>
                <plugins>
                    <plugin>
                        <artifactId>maven-source-plugin</artifactId>
                        <executions>
                            <execution>
                                <!-- Skip the execution configured in org.apache:apache. We use our own configuration. -->
                                <id>attach-sources</id>
                                <phase>none</phase>
                                <goals>
                                    <goal>jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <artifactId>maven-assembly-plugin</artifactId>
                        <executions>
                            <execution>
                                <!-- Override the execution defined in org.apache:apache
                                     so that the source-release assembly is not built.
                                     We define our own source distribution in modules/distribution. -->
                                <id>source-release-assembly</id>
                                <phase>package</phase>
                                <goals>
                                    <goal>single</goal>
                                </goals>
                                <configuration>
                                    <skipAssembly>true</skipAssembly>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
        <profile>
            <id>doclint-java8-disable</id>
            <activation>
                <jdk>[1.8,)</jdk>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <configuration>
                            <additionalparam>-Xdoclint:none</additionalparam>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
    <mailingLists>
        <mailingList>
            <name>Axis2 Developer List</name>
            <subscribe>java-dev-subscribe@axis.apache.org</subscribe>
            <unsubscribe>java-dev-unsubscribe@axis.apache.org</unsubscribe>
            <post>java-dev@axis.apache.org</post>
            <archive>http://mail-archives.apache.org/mod_mbox/axis-java-dev/</archive>
            <otherArchives>
                <otherArchive>http://markmail.org/search/list:org.apache.ws.axis-dev</otherArchive>
            </otherArchives>
        </mailingList>
        <mailingList>
            <name>Axis2 User List</name>
            <subscribe>java-user-subscribe@axis.apache.org</subscribe>
            <unsubscribe>java-user-unsubscribe@axis.apache.org</unsubscribe>
            <post>java-user@axis.apache.org</post>
            <archive>http://mail-archives.apache.org/mod_mbox/axis-java-user/</archive>
            <otherArchives>
                <otherArchive>http://markmail.org/search/list:org.apache.ws.axis-user</otherArchive>
            </otherArchives>
        </mailingList>
    </mailingLists>
    <developers>
        <developer>
            <name>Saminda Abeyruwan</name>
            <id>saminda</id>
            <email>saminda AT wso2.com</email>
            <organization>WSO2</organization>
        </developer>
        <developer>
            <name>Afkham Azeez</name>
            <id>azeez</id>
            <email>azeez AT wso2.com</email>
            <organization>WSO2</organization>
            <url>http://www.apache.org/~azeez</url>
        </developer>
        <developer>
            <name>Jeff Barrett</name>
            <organization>IBM</organization>
        </developer>
        <developer>
            <name>Eran Chinthaka</name>
            <id>chinthaka</id>
            <email>chinthaka AT wso2.com</email>
            <organization>WSO2</organization>
            <url>http://www.apache.org/~chinthaka</url>
        </developer>
        <developer>
            <name>Glen Daniels</name>
            <id>gdaniels</id>
            <email>gdaniels AT apache.org</email>
            <organization>Sonic Software</organization>
        </developer>
        <developer>
            <name>Brian DePradine</name>
            <id>pradine</id>
            <email>pradine AT uk.ibm.com</email>
            <organization>IBM</organization>
        </developer>
        <developer>
            <name>Jaliya Ekanayake</name>
            <id>jaliya</id>
            <email>jaliya AT opensource.lk</email>
            <organization>Indiana University, USA</organization>
            <url>http://www.apache.org/~jaliya</url>
        </developer>
        <developer>
            <name>Ruchith Fernando</name>
            <id>ruchithf</id>
            <email>ruchith AT wso2.com</email>
            <organization>WSO2</organization>
        </developer>
        <developer>
            <name>Nicholas Gallardo</name>
            <organization>IBM</organization>
        </developer>
        <developer>
            <name>Thilina Gunarathne</name>
            <id>thilina</id>
            <email>thilina AT opensource.lk</email>
            <organization>Lanka Software Foundation</organization>
        </developer>
        <developer>
            <name>Chathura Herath</name>
            <id>chathura</id>
            <email>chathura AT opensource.lk</email>
            <organization>Indiana University, USA</organization>
            <url>http://www.apache.org/~chathura</url>
        </developer>
        <developer>
            <name>David Illsley</name>
            <id>davidillsley</id>
            <organization>IBM</organization>
            <url>http://www.illsley.org</url>
        </developer>
        <developer>
            <name>Deepal Jayasinghe</name>
            <id>deepal</id>
            <email>deepal AT gatech.org</email>
            <organization>Georgia Institute of Technology, USA</organization>
            <url>http://www.apache.org/~deepal</url>
        </developer>
        <developer>
            <name>Robert Lazarski</name>
            <id>robertlazarski</id>
            <email>robertlazarski AT gmail.com</email>
            <organization>Brazil Outsource</organization>
        </developer>
        <developer>
            <name>Senaka Fernando</name>
            <id>senaka</id>
            <email>senaka AT wso2.com</email>
            <organization>WSO2</organization>
        </developer>
        <developer>
            <name>Steve Loughran</name>
            <id>stevel</id>
            <email>stevel AT apache.org</email>
            <organization>HP labs</organization>
        </developer>
        <developer>
            <name>Bill Nagy</name>
            <organization>IBM</organization>
        </developer>
        <developer>
            <name>Chatra Nakkawita</name>
            <id>chatra</id>
            <email>chatra AT WSO2.com</email>
            <organization>WSO2</organization>
        </developer>
        <developer>
            <name>Sumedha Rubasinghe</name>
            <id>sumedha</id>
            <email>sumedha AT WSO2.com</email>
            <organization>WSO2</organization>
        </developer>
        <developer>
            <name>Charitha Kamkanamge</name>
            <id>charitha</id>
            <email>charitha AT WSO2.com</email>
            <organization>WSO2</organization>
        </developer>
        <developer>
            <name>Srinath Perera</name>
            <id>hemapani</id>
            <email>hemapani AT apache.org</email>
            <organization>Indiana University, USA</organization>
            <url>http://www.apache.org/~hemapani</url>
        </developer>
        <developer>
            <name>Ajith Ranabahu</name>
            <id>ajith</id>
            <email>ajith AT wso2.com</email>
            <organization>WSO2</organization>
            <url>http://www.apache.org/~ajith</url>
        </developer>
        <developer>
            <name>Venkat Reddy</name>
            <id>venkat</id>
            <email>vreddyp AT gmail.com</email>
            <organization>Computer Associates</organization>
        </developer>
        <developer>
            <name>Michael Rheinheimer</name>
            <organization>IBM</organization>
        </developer>
        <developer>
            <name>Ann Robinson</name>
            <organization>IBM</organization>
        </developer>
        <developer>
            <name>Sanka Samaranayake</name>
            <id>sanka</id>
            <email>sanka AT wso2.com</email>
            <organization>WSO2</organization>
        </developer>
        <developer>
            <name>Rich Scheuerle</name>
            <id>scheu</id>
            <email>scheu AT us.ibm.com</email>
            <organization>IBM</organization>
        </developer>
        <developer>
            <name>Ashutosh Shahi</name>
            <id>ashu</id>
            <email>Ashutosh.Shahi AT ca.com</email>
            <organization>Computer Associates</organization>
        </developer>
        <developer>
            <name>Aleksander Slominski</name>
            <id>alek</id>
            <email>aslom AT cs.indiana.edu</email>
            <organization>Indiana University Extreme! Computing Lab</organization>
        </developer>
        <developer>
            <name>Dennis Sosnoski</name>
            <id>dsosnoski</id>
            <email>dms AT sosnoski.com</email>
            <organization>Sosnoski Software</organization>
        </developer>
        <developer>
            <name>Davanum Srinivas</name>
            <id>dims</id>
            <email>davanum AT gmail.com</email>
        </developer>
        <developer>
            <name>Jayachandra Sekhara Rao Sunkara</name>
            <id>jaya</id>
            <email>jayachandra AT gmail.com</email>
            <organization>Computer Associates</organization>
        </developer>
        <developer>
            <name>Nandana Mihindukulasooriya</name>
            <id>nandana</id>
            <email>nandana AT wso2.com</email>
            <organization>WSO2</organization>
        </developer>
        <developer>
            <name>Nikhil Thaker</name>
            <organization>IBM</organization>
        </developer>
        <developer>
            <name>Chamil Thanthrimudalige</name>
            <id>chamil</id>
            <email>chamil AT wso2.com</email>
            <organization>WSO2</organization>
        </developer>
        <developer>
            <name>Dasarath Weerathunga</name>
            <id>dasarath</id>
            <email>dasarath AT opensource.lk</email>
            <organization>Purdue University, USA</organization>
        </developer>
        <developer>
            <name>Eranga Jayasundera</name>
            <id>eranga</id>
            <email>eranga AT apache.org</email>
        </developer>
        <developer>
            <name>Sanjiva Weerawarana</name>
            <id>sanjiva</id>
            <email>sanjiva AT wso2.com</email>
            <organization>WSO2</organization>
        </developer>
        <developer>
            <name>Keith Chapman</name>
            <id>keithc</id>
            <email>keith AT wso2.com</email>
            <organization>WSO2</organization>
        </developer>
        <developer>
            <name>Andreas Veithen</name>
            <id>veithen</id>
            <email>veithen AT apache.org</email>
            <url>http://www.linkedin.com/in/aveithen</url>
        </developer>
        <developer>
            <name>Ruwan Linton</name>
            <id>ruwan</id>
            <email>ruwan AT apache.org</email>
            <url>http://www.linkedin.com/in/ruwanlinton</url>
        </developer>
        <developer>
            <name>Sagara Gunathunga</name>
            <id>sagara</id>
            <email>sagara AT apache.org</email>
            <organization>WSO2</organization>
        </developer>
        <developer>
            <name>Shameera Rathnayaka</name>
            <id>shameera</id>
            <email>shameera AT apache.org</email>
            <url>http://lk.linkedin.com/pub/shameera-rathnayaka/1a/661/561</url>
            <organization>WSO2</organization>
        </developer>
        <developer>
            <name>Isuru Suriarachchi</name>
            <id>isurues</id>
            <email>isurues AT apache.org</email>
            <url>https://www.linkedin.com/pub/isuru-suriarachchi/a/58b/b69</url>
            <organization>Indiana University</organization>
        </developer>
        <developer>
            <name>Hiranya Jayathilaka</name>
            <id>hiranya</id>
            <email>hiranya AT apache.org</email>
            <organization>UC Santa Barbara</organization>
        </developer>
    </developers>
    <contributors>
        <contributor>
            <name>Gayan Asanka</name>
            <email>gayan AT opensource.lk</email>
            <organization>Lanka Software Foundation</organization>
        </contributor>
        <contributor>
            <name>Dharshana Dias</name>
            <organization>Lanka Software Foundation / University of Moratuwa</organization>
        </contributor>
        <contributor>
            <name>Nadana Gunarathna</name>
            <email>nadana AT opensource.lk</email>
            <organization>Lanka Software Foundation</organization>
        </contributor>
        <contributor>
            <name>Thilini Gunawardhana</name>
            <email>thilini AT WSO2.com</email>
            <organization>WSO2</organization>
        </contributor>
        <contributor>
            <name>Anushka Kumara</name>
            <email>anushkakumar AT gmail.com</email>
            <organization>Lanka Software Foundation / University of Moratuwa</organization>
        </contributor>
        <contributor>
            <name>Farhaan Mohideen</name>
            <email>fmohideen AT valista.com</email>
            <organization>Lanka Software Foundation</organization>
        </contributor>
        <contributor>
            <name>Chinthaka Thilakarathne</name>
            <organization>Lanka Software Foundation / University of Moratuwa</organization>
        </contributor>
        <contributor>
            <name>Shivantha Huruggamuwa</name>
            <email>shivanthah AT gmail.com</email>
            <organization>University Of Peradeniya , Sri Lanka</organization>
        </contributor>
        <contributor>
            <name>Dobri Kitipov</name>
            <email>kdobrik AT gmail.com</email>
            <organization>Software AG</organization>
        </contributor>
    </contributors>
    <scm>
        <connection>scm:svn:http://svn.apache.org/repos/asf/axis/axis2/java/core/trunk</connection>
        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/axis/axis2/java/core/trunk</developerConnection>
        <url>http://svn.apache.org/viewvc/axis/axis2/java/core/trunk</url>
    </scm>
    <distributionManagement>
        <site>
            <id>site</id>
            <url>scm:svn:https://svn.apache.org/repos/asf/axis/site/axis2/java/core-staging</url>
        </site>
    </distributionManagement>
    <properties>
        <neethi.version>3.0.4-SNAPSHOT</neethi.version>
        <woden.version>1.0M11-SNAPSHOT</woden.version>
        <axiom.version>1.3.0-SNAPSHOT</axiom.version>
        <xmlschema.version>2.2.2-SNAPSHOT</xmlschema.version>
        <ant.version>1.7.0</ant.version>
        <antlr.version>2.7.7</antlr.version>
        <bsf.version>2.4.0</bsf.version>
        <commons.codec.version>1.3</commons.codec.version>
        <commons.fileupload.version>1.3.1</commons.fileupload.version>
        <commons.httpclient.version>3.1</commons.httpclient.version>
        <commons.io.version>2.1</commons.io.version>
        <commons.logging.version>1.1.1</commons.logging.version>
        <fi.version>1.2.7</fi.version>
        <geronimo.spec.annotation.version>1.1</geronimo.spec.annotation.version>
        <geronimo.spec.metadata.version>1.1.2</geronimo.spec.metadata.version>
        <geronimo.spec.jaxws.version>1.0</geronimo.spec.jaxws.version>
        <google.gson.version>2.1</google.gson.version>
        <httpcore.version>4.4.6</httpcore.version>
        <httpclient.version>4.5.3</httpclient.version>
        <intellij.version>5.0</intellij.version>
        <jalopy.version>1.5rc3</jalopy.version>
        <jaxb.api.version>2.2.6</jaxb.api.version>
        <jaxbri.version>2.2.6</jaxbri.version>
        <jettison.version>1.3.8</jettison.version>
        <jibx.version>1.2</jibx.version>
        <log4j.version>1.2.15</log4j.version>
        <maven.archiver.version>3.0.2</maven.archiver.version>
        <maven.version>3.0.5</maven.version>
        <maven.plugin.descriptor.version>2.0.7</maven.plugin.descriptor.version>
        <maven.archetype.plugin.version>2.2</maven.archetype.plugin.version>
        <plexus.classworlds.version>2.4</plexus.classworlds.version>
        <plexus.utils.version>1.4.9</plexus.utils.version>
        <rhino.version>1.6R7</rhino.version>
        <servlet.api.version>2.3</servlet.api.version>
        <slf4j.version>1.7.22</slf4j.version>
        <spring.version>2.5.1</spring.version>
        <tomcat.version>6.0.16</tomcat.version>
        <wsdl4j.version>1.6.2</wsdl4j.version>
        <xalan.version>2.7.0</xalan.version>
        <xmlbeans.version>2.5.0</xmlbeans.version>
        <xml_resolver.version>1.2</xml_resolver.version>
        <xmlunit.version>1.3</xmlunit.version>
        <commons.lang.version>2.3</commons.lang.version>
        <commons.cli.version>1.2</commons.cli.version>
        <!-- The build failing if tests are skipped is very annoying -->
        <failIfNoTests>false</failIfNoTests>
        <m2Repository>'${settings.localRepository}'</m2Repository>
        <geronimo-spec.jta.version>1.1</geronimo-spec.jta.version>
        <jaxws.tools.version>2.2.6</jaxws.tools.version>
        <jaxws.rt.version>2.2.6</jaxws.rt.version>
        <jsr311.api.version>1.1.1</jsr311.api.version>

        <!-- This variable is used in some Xdocs and is substituted using Velocity. Note that
             we can't use the project.version variable directly because of the dot. See
             http://maven.apache.org/plugins/maven-site-plugin/examples/creating-content.html -->
        <axis2_version>${project.version}</axis2_version>
    </properties>
    <pluginRepositories>
        <pluginRepository>
            <id>apache.snapshots</id>
            <name>Apache Snapshot Repository</name>
            <url>http://repository.apache.org/snapshots</url>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>daily</updatePolicy>
            </snapshots>
            <releases>
                <enabled>false</enabled>
            </releases>
        </pluginRepository>
    </pluginRepositories>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.sun.xml.fastinfoset</groupId>
                <artifactId>FastInfoset</artifactId>
                <version>${fi.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.tomcat</groupId>
                <artifactId>tribes</artifactId>
                <version>${tomcat.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.tomcat</groupId>
                <artifactId>juli</artifactId>
                <version>${tomcat.version}</version>
            </dependency>
            <dependency>
                <groupId>xml-resolver</groupId>
                <artifactId>xml-resolver</artifactId>
                <version>${xml_resolver.version}</version>
            </dependency>
            <dependency>
                <groupId>xalan</groupId>
                <artifactId>xalan</artifactId>
                <version>${xalan.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>xml-apis</groupId>
                        <artifactId>xml-apis</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>com.sun.xml.bind</groupId>
                <artifactId>jaxb-impl</artifactId>
                <version>${jaxbri.version}</version>
            </dependency>
            <dependency>
                <groupId>com.sun.xml.bind</groupId>
                <artifactId>jaxb-xjc</artifactId>
                <version>${jaxbri.version}</version>
            </dependency>
            <dependency>
                <groupId>javax.xml.bind</groupId>
                <artifactId>jaxb-api</artifactId>
                <version>${jaxb.api.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>javax.xml.stream</groupId>
                        <artifactId>stax-api</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>javax.activation</groupId>
                        <artifactId>activation</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>com.sun.xml.ws</groupId>
                <artifactId>jaxws-tools</artifactId>
                <version>${jaxws.tools.version}</version>
            </dependency>
            <dependency>
                <groupId>com.sun.xml.ws</groupId>
                <artifactId>jaxws-rt</artifactId>
                <version>${jaxws.rt.version}</version>             
            </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-core</artifactId>
                <version>${spring.version}</version>
            </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-beans</artifactId>
                <version>${spring.version}</version>
            </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-context</artifactId>
                <version>${spring.version}</version>
            </dependency>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-web</artifactId>
                <version>${spring.version}</version>
            </dependency>
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>servlet-api</artifactId>
                <version>${servlet.api.version}</version>
            </dependency>
            <dependency>
                <groupId>org.codehaus.jettison</groupId>
                <artifactId>jettison</artifactId>
                <version>${jettison.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>stax</groupId>
                        <artifactId>stax-api</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>com.google.code.gson</groupId>
                <artifactId>gson</artifactId>
                <version>${google.gson.version}</version>
            </dependency>
            <dependency>
                <groupId>org.jibx</groupId>
                <artifactId>jibx-bind</artifactId>
                <version>${jibx.version}</version>
            </dependency>
            <dependency>
                <groupId>org.jibx</groupId>
                <artifactId>jibx-run</artifactId>
                <version>${jibx.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.codehaus.woodstox</groupId>
                        <artifactId>wstx-asl</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.apache.ant</groupId>
                <artifactId>ant-launcher</artifactId>
                <version>${ant.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.ws.commons.axiom</groupId>
                <artifactId>axiom-api</artifactId>
                <version>${axiom.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>xml-apis</groupId>
                        <artifactId>xml-apis</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>xerces</groupId>
                        <artifactId>xercesImpl</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.apache.ws.commons.axiom</groupId>
                <artifactId>axiom-impl</artifactId>
                <version>${axiom.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.ws.commons.axiom</groupId>
                <artifactId>axiom-dom</artifactId>
                <version>${axiom.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.ws.commons.axiom</groupId>
                <artifactId>testutils</artifactId>
                <version>${axiom.version}</version>
            </dependency>
            <dependency>
                <groupId>com.google.truth</groupId>
                <artifactId>truth</artifactId>
                <version>0.28</version>
            </dependency>
            <dependency>
                <groupId>org.apache.ws.commons.axiom</groupId>
                <artifactId>xml-truth</artifactId>
                <version>${axiom.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.ws.commons.axiom</groupId>
                <artifactId>axiom-truth</artifactId>
                <version>${axiom.version}</version>
            </dependency>
            <dependency>
                <groupId>org.mockito</groupId>
                <artifactId>mockito-core</artifactId>
                <version>1.10.19</version>
            </dependency>
            <dependency>
                <groupId>org.apache.ws.xmlschema</groupId>
                <artifactId>xmlschema-core</artifactId>
                <version>${xmlschema.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.neethi</groupId>
                <artifactId>neethi</artifactId>
                <version>${neethi.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.codehaus.woodstox</groupId>
                        <artifactId>woodstox-core-asl</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.apache.ant</groupId>
                <artifactId>ant</artifactId>
                <version>${ant.version}</version>
            </dependency>
            <dependency>
                <groupId>commons-logging</groupId>
                <artifactId>commons-logging</artifactId>
                <version>${commons.logging.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>jcl-over-slf4j</artifactId>
                <version>${slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>commons-codec</groupId>
                <artifactId>commons-codec</artifactId>
                <version>${commons.codec.version}</version>
            </dependency>

            <dependency>
                <groupId>com.sun.mail</groupId>
                <artifactId>javax.mail</artifactId>
                <version>1.5.6</version>
                <exclusions>
                    <exclusion>
                        <groupId>javax.activation</groupId>
                        <artifactId>activation</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.apache.geronimo.specs</groupId>
                <artifactId>geronimo-annotation_1.0_spec</artifactId>
                <version>${geronimo.spec.annotation.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.geronimo.specs</groupId>
                <artifactId>geronimo-ws-metadata_2.0_spec</artifactId>
                <version>${geronimo.spec.metadata.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.geronimo.specs</groupId>
                <artifactId>geronimo-jaxws_2.2_spec</artifactId>
                <version>${geronimo.spec.jaxws.version}</version>
            </dependency>

            <dependency>
                <groupId>commons-httpclient</groupId>
                <artifactId>commons-httpclient</artifactId>
                <version>${commons.httpclient.version}</version>
            </dependency>
            <dependency>
                <groupId>commons-io</groupId>
                <artifactId>commons-io</artifactId>
                <version>${commons.io.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpcore</artifactId>
                <version>${httpcore.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpcore-osgi</artifactId>
                <version>${httpcore.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpclient</artifactId>
                <version>${httpclient.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpclient-osgi</artifactId>
                <version>${httpclient.version}</version>
            </dependency>
            <dependency>
                <groupId>commons-fileupload</groupId>
                <artifactId>commons-fileupload</artifactId>
                <version>${commons.fileupload.version}</version>
            </dependency>
            <dependency>
                <groupId>wsdl4j</groupId>
                <artifactId>wsdl4j</artifactId>
                <version>${wsdl4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.woden</groupId>
                <artifactId>woden-core</artifactId>
                <version>${woden.version}</version>
            </dependency>
            <dependency>
                <groupId>javax.ws.rs</groupId>
                <artifactId>jsr311-api</artifactId>
                <version>${jsr311.api.version}</version>
            </dependency>
            <dependency>
                <groupId>xmlunit</groupId>
                <artifactId>xmlunit</artifactId>
                <version>${xmlunit.version}</version>
            </dependency>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>4.12</version>
            </dependency>
            <dependency>
                <groupId>org.apache.xmlbeans</groupId>
                <artifactId>xmlbeans</artifactId>
                <version>${xmlbeans.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>stax</groupId>
                        <artifactId>stax-api</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-plugin-api</artifactId>
                <version>${maven.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-core</artifactId>
                <version>${maven.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-artifact</artifactId>
                <version>${maven.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-compat</artifactId>
                <version>${maven.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-archiver</artifactId>
                <version>${maven.archiver.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-plugin-descriptor</artifactId>
                <version>${maven.plugin.descriptor.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-archetype-plugin</artifactId>
                <version>${maven.archetype.plugin.version}</version>
            </dependency>
            <dependency>
                <groupId>org.codehaus.plexus</groupId>
                <artifactId>plexus-utils</artifactId>
                <version>${plexus.utils.version}</version>
            </dependency>
            <dependency>
                <groupId>org.codehaus.plexus</groupId>
                <artifactId>plexus-classworlds</artifactId>
                <version>${plexus.classworlds.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.maven.plugin-testing</groupId>
                <artifactId>maven-plugin-testing-harness</artifactId>
                <scope>test</scope>
                <version>2.1</version>
            </dependency>
            <dependency>
                <groupId>log4j</groupId>
                <artifactId>log4j</artifactId>
                <version>${log4j.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>javax.mail</groupId>
                        <artifactId>mail</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>javax.jms</groupId>
                        <artifactId>jms</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>com.sun.jdmk</groupId>
                        <artifactId>jmxtools</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>com.sun.jmx</groupId>
                        <artifactId>jmxri</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>oro</groupId>
                        <artifactId>oro</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>junit</groupId>
                        <artifactId>junit</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.eclipse.core</groupId>
                <artifactId>jobs</artifactId>
                <version>3.2.0-v20060603</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.core</groupId>
                <artifactId>resources</artifactId>
                <version>3.2.1-R32x_v20060914</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.core</groupId>
                <artifactId>runtime</artifactId>
                <version>3.2.0-v20060603</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.equinox</groupId>
                <artifactId>common</artifactId>
                <version>3.2.0-v20060603</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse</groupId>
                <artifactId>jface</artifactId>
                <version>3.2.1-M20060908-1000</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse</groupId>
                <artifactId>osgi</artifactId>
                <version>3.2.1-R32x_v20060919</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse</groupId>
                <artifactId>swt</artifactId>
                <version>3.2.1-v3235e</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.swt.win32.win32</groupId>
                <artifactId>x86</artifactId>
                <version>3.2.1-v3235</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.ui</groupId>
                <artifactId>ide</artifactId>
                <version>3.2.1-M20060915-1030</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.core</groupId>
                <artifactId>expressions</artifactId>
                <version>3.2.1-r321_v20060721</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse</groupId>
                <artifactId>ui</artifactId>
                <version>3.2.1-M20060913-0800</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.ui</groupId>
                <artifactId>workbench</artifactId>
                <version>3.2.1-M20060906-0800</version>
            </dependency>
            <dependency>
                <groupId>org.eclipse.update</groupId>
                <artifactId>core</artifactId>
                <version>3.2.1-v20092006</version>
            </dependency>
            <dependency>
                <groupId>com.intellij</groupId>
                <artifactId>openapi</artifactId>
                <version>${intellij.version}</version>
            </dependency>
            <dependency>
                <groupId>com.intellij</groupId>
                <artifactId>extensions</artifactId>
                <version>${intellij.version}</version>
            </dependency>
            <dependency>
                <groupId>rhino</groupId>
                <artifactId>js</artifactId>
                <version>${rhino.version}</version>
            </dependency>
            <dependency>
                <groupId>bsf</groupId>
                <artifactId>bsf</artifactId>
                <version>${bsf.version}</version>
            </dependency>
            <dependency>
                <groupId>jalopy</groupId>
                <artifactId>jalopy</artifactId>
                <version>${jalopy.version}</version>
            </dependency>
            <dependency>
                <groupId>commons-lang</groupId>
                <artifactId>commons-lang</artifactId>
                <version>${commons.lang.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.geronimo.specs</groupId>
                <artifactId>geronimo-jta_1.1_spec</artifactId>
                <version>${geronimo-spec.jta.version}</version>
            </dependency>

            <dependency>
                <groupId>commons-cli</groupId>
                <artifactId>commons-cli</artifactId>
                <version>${commons.cli.version}</version>
            </dependency>
            
            <!-- Jetty is used by some of the unit tests -->
            <dependency>
                <groupId>jetty</groupId>
                <artifactId>jetty</artifactId>
                <version>5.1.10</version>
            </dependency>

            <!-- AspectJ is used in the unit tests of several transports -->            
            <dependency>
                <groupId>org.aspectj</groupId>
                <artifactId>aspectjrt</artifactId>
                <version>1.8.2</version>
            </dependency>
            <dependency>
                <groupId>org.aspectj</groupId>
                <artifactId>aspectjweaver</artifactId>
                <version>1.8.2</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <version>2.10.3</version>
                    <configuration>
                        <detectOfflineLinks>false</detectOfflineLinks>
                    </configuration>
                </plugin>
                <plugin>
                    <artifactId>maven-release-plugin</artifactId>
                    <configuration>
                        <autoVersionSubmodules>true</autoVersionSubmodules>
                        <!-- "clean verify" fails because for OSGi bundles, there
                             is a mismatch between the type of the dependency (jar)
                             and the actual packaging (bundle) and Maven resolves
                             the dependency from the local repository instead of the
                             reactor. -->
                        <preparationGoals>clean install</preparationGoals>
                        <tagNameFormat>v@{project.version}</tagNameFormat>
                    </configuration>
                </plugin>
                <plugin>
                    <artifactId>maven-site-plugin</artifactId>
                    <version>3.6</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.gmavenplus</groupId>
                    <artifactId>gmavenplus-plugin</artifactId>
                    <version>1.5</version>
                    <dependencies>
                        <dependency>
                            <groupId>org.codehaus.groovy</groupId>
                            <artifactId>groovy-all</artifactId>
                            <version>2.4.4</version>
                        </dependency>
                    </dependencies>
                </plugin>
                <plugin>
                    <artifactId>maven-antrun-plugin</artifactId>
                    <version>1.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <version>2.6</version>
                </plugin>
                <plugin>
                    <artifactId>maven-clean-plugin</artifactId>
                    <version>2.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.5.1</version>
                </plugin>
                <plugin>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <version>2.0</version>
                </plugin>
                <plugin>
                    <artifactId>maven-ear-plugin</artifactId>
                    <version>2.3.1</version>
                </plugin>
                <plugin>
                    <artifactId>maven-ejb-plugin</artifactId>
                    <version>2.1</version>
                </plugin>
                <plugin>
                    <artifactId>maven-install-plugin</artifactId>
                    <version>2.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version>2.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-plugin-plugin</artifactId>
                    <version>2.6</version>
                </plugin>
                <plugin>
                    <artifactId>maven-rar-plugin</artifactId>
                    <version>2.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>2.4.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-source-plugin</artifactId>
                    <version>2.4</version>
                </plugin>
                <plugin>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.13</version>
                </plugin>
                <plugin>
                    <artifactId>maven-war-plugin</artifactId>
                    <version>2.6</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>build-helper-maven-plugin</artifactId>
                    <version>1.4</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.felix</groupId>
                    <artifactId>maven-bundle-plugin</artifactId>
                    <version>2.1.0</version>
                </plugin>
                <plugin>
                    <groupId>net.ju-n.maven.plugins</groupId>
                    <artifactId>checksum-maven-plugin</artifactId>
                    <version>1.2</version>
                </plugin>
                <plugin>
                    <artifactId>maven-project-info-reports-plugin</artifactId>
                    <version>2.8.1</version>
                </plugin>
                <plugin>
                    <groupId>com.github.veithen.alta</groupId>
                    <artifactId>alta-maven-plugin</artifactId>
                    <version>0.5</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>jaxb2-maven-plugin</artifactId>
                    <version>2.2</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>jaxws-maven-plugin</artifactId>
                    <version>2.4.1</version>
                    <configuration>
                        <vmArgs>
                            <vmArg>-Djavax.xml.accessExternalSchema=all</vmArg>
                        </vmArgs>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.eclipse.jetty</groupId>
                    <artifactId>jetty-maven-plugin</artifactId>
                    <version>9.3.10.v20160621</version>
                </plugin>
                <plugin>
                    <artifactId>maven-invoker-plugin</artifactId>
                    <version>2.0.0</version>
                    <configuration>
                        <javaHome>${java.home}</javaHome>
                    </configuration>
                </plugin>
                
                <!-- Use 1.5.2 versions of the aar and mar plugins in order to avoid
                     the chicken and egg problem. -->
                <plugin>
                    <groupId>org.apache.axis2</groupId>
                    <artifactId>axis2-aar-maven-plugin</artifactId>
                    <version>1.5.2</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.axis2</groupId>
                    <artifactId>axis2-mar-maven-plugin</artifactId>
                    <version>1.5.2</version>
                </plugin>
                
                <!-- No chicken and egg problem here because the plugin doesn't expose
                     any extension. We can always use the version from the current build. -->
                <plugin>
                    <groupId>org.apache.axis2</groupId>
                    <artifactId>axis2-repo-maven-plugin</artifactId>
                    <version>${project.version}</version>
                </plugin>
            </plugins>
        </pluginManagement>
        <plugins>
            <plugin>
                <artifactId>maven-enforcer-plugin</artifactId>
                <version>1.1</version>
                <executions>
                    <execution>
                        <phase>validate</phase>
                        <goals>
                            <goal>enforce</goal>
                        </goals>
                        <configuration>
                            <rules>
                                <requireMavenVersion>
                                    <version>3.0.0</version>
                                </requireMavenVersion>
                                <requireJavaVersion>
                                    <!-- We require a recent Java version for the build, but we enforce compatibility with older versions using Animal Sniffer -->
                                    <version>1.8.0</version>
                                </requireJavaVersion>
                                <requireNoRepositories>
                                    <message>The POM must not include repository definitions since non Apache repositories threaten the build stability.</message>
                                    <banRepositories>true</banRepositories>
                                    <banPluginRepositories>true</banPluginRepositories>
                                    <!-- We still need to allow the Apache snapshot repository -->
                                    <allowSnapshotRepositories>true</allowSnapshotRepositories>
                                    <allowSnapshotPluginRepositories>true</allowSnapshotPluginRepositories>
                                </requireNoRepositories>
                            </rules>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <inherited>true</inherited>
                <configuration>
                    <source>1.6</source>
                    <target>1.6</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>animal-sniffer-maven-plugin</artifactId>
                <version>1.14</version>
                <executions>
                    <execution>
                        <id>check</id>
                        <phase>verify</phase>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <signature>
                        <groupId>org.codehaus.mojo.signature</groupId>
                        <artifactId>java16</artifactId>
                        <version>1.1</version>
                    </signature>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                    <redirectTestOutputToFile>true</redirectTestOutputToFile>
                    <systemProperties>
                        <property>
                            <name>java.io.tmpdir</name>
                            <value>${project.build.directory}/tmp</value>
                        </property>
                    </systemProperties>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-failsafe-plugin</artifactId>
                <configuration>
                    <redirectTestOutputToFile>true</redirectTestOutputToFile>
                    <systemProperties>
                        <property>
                            <name>java.io.tmpdir</name>
                            <value>${project.build.directory}/tmp</value>
                        </property>
                    </systemProperties>
                </configuration>
            </plugin>
            <plugin>
                <!-- Always build source JARs -->
                <artifactId>maven-source-plugin</artifactId>
                <executions>
                    <execution>
                        <id>source-jars</id>
                        <goals>
                            <goal>jar-no-fork</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <attach>true</attach>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.codehaus.gmavenplus</groupId>
                <artifactId>gmavenplus-plugin</artifactId>
                <executions>
                    <execution>
                        <id>create-tmp-directory</id>
                        <phase>initialize</phase>
                        <goals>
                            <goal>execute</goal>
                        </goals>
                        <configuration>
                            <scripts>
                                <script><![CDATA[
                                    import java.io.File
                                    
                                    // Create the temporary directory specified in the surefire configuration
                                    new File(project.build.directory, 'tmp').mkdirs()
                                ]]></script>
                            </scripts>
                        </configuration>
                    </execution>
                    <execution>
                        <id>prepare-site</id>
                        <phase>pre-site</phase>
                        <goals>
                            <goal>execute</goal>
                        </goals>
                        <configuration>
                            <scripts>
                                <script>
                                    import java.util.Date
                                    import java.text.MessageFormat
                                    project.properties['release_date'] = MessageFormat.format("{0,date,MMMMM dd, yyyy}", new Date())
                                    project.properties['release_version'] = project.version.replaceAll("-SNAPSHOT", "")
                                    project.properties['skipSiteSite'] = String.valueOf(!new File(project.basedir, 'src/site/site.xml').exists())
                                </script>
                            </scripts>
                        </configuration>
                    </execution>
                    <execution>
                        <id>check-site</id>
                        <phase>post-site</phase>
                        <goals>
                            <goal>execute</goal>
                        </goals>
                        <configuration>
                            <scripts>
                                <script>
                                    project.properties['skipSiteStage'] = String.valueOf(!new File(project.reporting.outputDirectory).exists())
                                </script>
                            </scripts>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-deploy-plugin</artifactId>
                <configuration>
                    <!-- Work around flakiness in the ASF infrastructure -->
                    <retryFailedDeploymentCount>3</retryFailedDeploymentCount>
                </configuration>
            </plugin>
            <plugin>
                <artifactId>maven-site-plugin</artifactId>
                <executions>
                    <execution>
                        <id>default-site</id>
                        <phase>site</phase>
                        <goals>
                            <goal>site</goal>
                        </goals>
                        <configuration>
                            <skip>${skipSiteSite}</skip>
                        </configuration>
                    </execution>
                    <execution>
                        <id>site-stage</id>
                        <phase>site-deploy</phase>
                        <goals>
                            <goal>stage</goal>
                        </goals>
                        <configuration>
                            <skip>${skipSiteStage}</skip>
                        </configuration>
                    </execution>
                </executions>
                <configuration>
                    <!-- Don't deploy; we use maven-scm-publish-plugin -->
                    <skipDeploy>true</skipDeploy>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-scm-publish-plugin</artifactId>
                <version>1.1</version>
            </plugin>
        </plugins>
    </build>
    <reporting>
        <plugins>
            <plugin>
                <artifactId>maven-project-info-reports-plugin</artifactId>
                <inherited>false</inherited>
                <reportSets>
                    <reportSet>
                        <reports>
                            <report>issue-tracking</report>
                            <report>mailing-list</report>
                            <report>project-team</report>
                        </reports>
                    </reportSet>
                </reportSets>
            </plugin>
        </plugins>
    </reporting>
</project>
