blob: c84722272498f80d17742a950e094b4efae3c969 [file]
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache</groupId>
<artifactId>apache</artifactId>
<version>40</version>
</parent>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2</artifactId>
<version>2.0.2-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Apache Axis2 - Root</name>
<url>http://axis.apache.org/axis2/java/core/</url>
<inceptionYear>2004</inceptionYear>
<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>
</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>
<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>
<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>
<!-- FastInfoset removed: AXIS2-6105 (binary XML, superseded by JSON + gzip) -->
<module>modules/integration</module>
<module>modules/java2wsdl</module>
<!-- JiBX modules removed: AXIS2-6105 (dead project, last release 2016) -->
<module>modules/json</module>
<module>modules/kernel</module>
<module>modules/openapi</module>
<module>modules/mcp-bridge</module>
<module>modules/jpa-schema</module>
<module>modules/mex</module>
<module>modules/mtompolicy</module>
<module>modules/mtompolicy-mar</module>
<module>modules/ping</module>
<module>modules/samples/swagger-server</module>
<module>modules/samples/version</module>
<!-- SOAPMonitor removed: AXIS2-6105 (Java Applets removed from JDK in Java 11) -->
<module>modules/schema-validation</module>
<module>modules/spring</module>
<module>modules/spring-boot-starter</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-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/xmlbeans-codegen</module>
<!-- Scripting module removed: AXIS2-6105 (Nashorn removed from JDK in Java 15) -->
<module>modules/jaxbri-codegen</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/corba</module>
<!-- OSGi modules removed: AXIS2-6105 -->
<module>modules/transport/local</module>
<module>modules/transport/http</module>
<module>modules/transport-h2</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>
<!-- AXIS2-6106: XMPP transport removed — depends on unmaintained
jivesoftware:smack (circa 2008), no known users -->
<module>modules/distribution</module>
<module>modules/samples</module>
<module>databinding-tests</module>
<module>systests</module>
</modules>
<scm>
<connection>scm:git:https://gitbox.apache.org/repos/asf/axis-axis2-java-core.git</connection>
<developerConnection>scm:git:https://gitbox.apache.org/repos/asf/axis-axis2-java-core.git</developerConnection>
<url>https://gitbox.apache.org/repos/asf?p=axis-axis2-java-core.git;a=summary</url>
<tag>HEAD</tag>
</scm>
<issueManagement>
<system>jira</system>
<url>http://issues.apache.org/jira/browse/AXIS2</url>
</issueManagement>
<distributionManagement>
<site>
<id>site</id>
<url>scm:git:https://gitbox.apache.org/repos/asf/axis-site.git</url>
</site>
</distributionManagement>
<properties>
<neethi.version>3.2.4</neethi.version>
<axiom.version>2.0.0</axiom.version>
<xmlschema.version>2.3.3</xmlschema.version>
<ant.version>1.10.18</ant.version>
<antlr.version>2.7.7</antlr.version>
<aspectj.version>1.9.25.1</aspectj.version>
<bsf.version>2.4.0</bsf.version>
<commons.fileupload.version>2.0.0-M5</commons.fileupload.version>
<commons.logging.version>1.4.0</commons.logging.version>
<!-- fi.version removed: AXIS2-6105 -->
<google.gson.version>2.14.0</google.gson.version>
<groovy.version>6.0.0</groovy.version>
<httpcore.version>5.4.4</httpcore.version>
<httpclient.version>5.6.4</httpclient.version>
<jaxbri.version>4.0.3</jaxbri.version>
<jetty.version>12.1.14</jetty.version>
<!-- jibx.version removed: AXIS2-6105 -->
<maven.archiver.version>3.6.6</maven.archiver.version>
<maven.version>3.10.0</maven.version>
<rhino.version>1.9.1</rhino.version>
<slf4j.version>2.0.20</slf4j.version>
<spring.version>7.0.9</spring.version>
<wsdl4j.version>1.6.3</wsdl4j.version>
<xmlbeans.version>5.4.1</xmlbeans.version>
<xmlunit.version>2.14.0</xmlunit.version>
<xml_resolver.version>1.2</xml_resolver.version>
<commons.cli.version>1.11.0</commons.cli.version>
<!-- The build failing if tests are skipped is very annoying -->
<failIfNoTests>false</failIfNoTests>
<m2Repository>'${settings.localRepository}'</m2Repository>
<jaxws.rt.version>4.0.5</jaxws.rt.version>
<jaxws.api.version>4.0.3</jaxws.api.version>
<maven-plugin-tools.version>3.16.0</maven-plugin-tools.version>
<maven-archetype.version>3.4.1</maven-archetype.version>
<activemq.version>6.3.2</activemq.version>
<surefire.version>3.6.0</surefire.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>
<project.build.outputTimestamp>2026-05-17T23:20:49Z</project.build.outputTimestamp>
<maven.compiler.release>17</maven.compiler.release>
<jacoco.version>0.8.15</jacoco.version>
<asm.version>9.10.1</asm.version>
<swagger.version>2.2.55</swagger.version>
</properties>
<dependencyManagement>
<dependencies>
<!-- FastInfoset dep removed: AXIS2-6105 -->
<dependency>
<groupId>xml-resolver</groupId>
<artifactId>xml-resolver</artifactId>
<version>${xml_resolver.version}</version>
</dependency>
<dependency>
<groupId>jakarta.activation</groupId>
<artifactId>jakarta.activation-api</artifactId>
<version>2.1.4</version>
</dependency>
<dependency>
<groupId>org.eclipse.angus</groupId>
<artifactId>angus-activation</artifactId>
<version>2.0.3</version>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
<version>${jaxbri.version}</version>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-xjc</artifactId>
<version>${jaxbri.version}</version>
</dependency>
<dependency>
<groupId>jakarta.xml.bind</groupId>
<artifactId>jakarta.xml.bind-api</artifactId>
<version>4.0.5</version>
</dependency>
<dependency>
<groupId>jakarta.xml.soap</groupId>
<artifactId>jakarta.xml.soap-api</artifactId>
<version>3.0.2</version>
</dependency>
<dependency>
<groupId>com.sun.xml.ws</groupId>
<artifactId>jaxws-tools</artifactId>
<version>${jaxws.rt.version}</version>
</dependency>
<dependency>
<groupId>jakarta.xml.ws</groupId>
<artifactId>jakarta.xml.ws-api</artifactId>
<version>${jaxws.api.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>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
<version>6.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>${google.gson.version}</version>
</dependency>
<!-- JiBX deps removed: AXIS2-6105 -->
<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>axiom-jakarta-activation</artifactId>
<version>${axiom.version}</version>
</dependency>
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>axiom-legacy-attachments</artifactId>
<version>${axiom.version}</version>
</dependency>
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>axiom-jakarta-jaxb</artifactId>
<version>${axiom.version}</version>
</dependency>
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>testutils</artifactId>
<version>${axiom.version}</version>
</dependency>
<dependency>
<groupId>org.apache.ws.commons.axiom</groupId>
<artifactId>blob-testutils</artifactId>
<version>${axiom.version}</version>
</dependency>
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<version>3.27.7</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>5.24.0</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>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-jdk14</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>jakarta.mail</groupId>
<artifactId>jakarta.mail-api</artifactId>
<version>2.1.5</version>
</dependency>
<dependency>
<groupId>org.eclipse.angus</groupId>
<artifactId>angus-mail</artifactId>
<version>2.0.5</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.22.0</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents.core5</groupId>
<artifactId>httpcore5</artifactId>
<version>${httpcore.version}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents.core5</groupId>
<artifactId>httpcore5-h2</artifactId>
<version>${httpcore.version}</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents.client5</groupId>
<artifactId>httpclient5</artifactId>
<version>${httpclient.version}</version>
</dependency>
<!-- httpclient5-osgi / httpcore5-osgi removed: AXIS2-6105 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-fileupload2-core</artifactId>
<version>${commons.fileupload.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-fileupload2-jakarta-servlet6</artifactId>
<version>${commons.fileupload.version}</version>
</dependency>
<dependency>
<groupId>wsdl4j</groupId>
<artifactId>wsdl4j</artifactId>
<version>${wsdl4j.version}</version>
</dependency>
<!-- No woden-core entry: WSDL 2.0 support was removed in 2.0.1
(AXIS2-6102) and Apache Woden itself is being archived. Nothing
in the reactor compiles against it; do not reinstate. -->
<dependency>
<groupId>jakarta.ws.rs</groupId>
<artifactId>jakarta.ws.rs-api</artifactId>
<version>4.0.0</version>
</dependency>
<dependency>
<groupId>org.xmlunit</groupId>
<artifactId>xmlunit-legacy</artifactId>
<version>${xmlunit.version}</version>
</dependency>
<dependency>
<groupId>org.xmlunit</groupId>
<artifactId>xmlunit-assertj3</artifactId>
<version>${xmlunit.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.2</version>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>6.1.3</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.plugin-tools</groupId>
<artifactId>maven-plugin-annotations</artifactId>
<version>${maven-plugin-tools.version}</version>
</dependency>
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-utils</artifactId>
<version>4.1.0</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-bom</artifactId>
<version>2.26.1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- Eclipse platform and IntelliJ deps removed: AXIS2-6105 -->
<dependency>
<groupId>org.mozilla</groupId>
<artifactId>rhino</artifactId>
<version>${rhino.version}</version>
</dependency>
<dependency>
<groupId>org.mozilla</groupId>
<artifactId>rhino-xml</artifactId>
<version>${rhino.version}</version>
</dependency>
<dependency>
<groupId>bsf</groupId>
<artifactId>bsf</artifactId>
<version>${bsf.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.21.0</version>
</dependency>
<dependency>
<groupId>jakarta.transaction</groupId>
<artifactId>jakarta.transaction-api</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>org.osgi.framework</artifactId>
<version>1.10.0</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>33.7.2-jre</version>
</dependency>
<dependency>
<groupId>commons-cli</groupId>
<artifactId>commons-cli</artifactId>
<version>${commons.cli.version}</version>
</dependency>
<dependency>
<groupId>org.jacorb</groupId>
<artifactId>jacorb-omgapi</artifactId>
<version>3.9</version>
</dependency>
<dependency>
<groupId>com.fasterxml.woodstox</groupId>
<artifactId>woodstox-core</artifactId>
<version>7.3.0</version>
</dependency>
<!-- Jetty is used by some of the unit tests -->
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-server</artifactId>
<version>${jetty.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.jetty.ee9</groupId>
<artifactId>jetty-ee9-nested</artifactId>
<version>${jetty.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.jetty.ee10</groupId>
<artifactId>jetty-ee10-webapp</artifactId>
<version>${jetty.version}</version>
</dependency>
<!-- AspectJ is used in the unit tests of several transports -->
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>${aspectj.version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
<dependency>
<groupId>org.bouncycastle</groupId>
<artifactId>bcpkix-jdk18on</artifactId>
<version>1.86</version>
</dependency>
<dependency>
<groupId>jakarta.annotation</groupId>
<artifactId>jakarta.annotation-api</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>net.bytebuddy</groupId>
<artifactId>byte-buddy</artifactId>
<version>1.18.14</version>
</dependency>
<dependency>
<groupId>io.swagger.core.v3</groupId>
<artifactId>swagger-core</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>io.swagger.core.v3</groupId>
<artifactId>swagger-models</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>io.swagger.core.v3</groupId>
<artifactId>swagger-annotations</artifactId>
<version>${swagger.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<pluginRepositories>
<pluginRepository>
<id>apache.snapshots</id>
<name>Apache Snapshot Repository</name>
<url>https://repository.apache.org/snapshots</url>
<snapshots>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
</snapshots>
<releases>
<enabled>false</enabled>
</releases>
</pluginRepository>
<pluginRepository>
<id>sonatype-snapshots</id>
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
<releases>
<enabled>false</enabled>
</releases>
</pluginRepository>
</pluginRepositories>
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.12.0</version>
<configuration>
<source>${maven.compiler.release}</source>
<detectOfflineLinks>false</detectOfflineLinks>
<doclint>none</doclint>
<quiet>true</quiet>
<!-- AXIS2-6040: javac-shaded-9+181-r4173-1.jar (transitive
via Error Prone in codegen) has an invalid automatic module
name starting with '9'. legacyMode skips module resolution.
This is safe because Axis2 uses Automatic-Module-Name
manifest entries, not module-info.java — there is no module
information for javadoc to process. -->
<legacyMode>true</legacyMode>
</configuration>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<autoVersionSubmodules>true</autoVersionSubmodules>
<tagNameFormat>v@{project.version}</tagNameFormat>
<!-- The Spring Boot userguide samples cannot join the reactor: they
inherit spring-boot-starter-parent, so release:prepare never sees
them and their <axis2.version> would keep pointing at a SNAPSHOT
that does not exist once the release is out. Running the sync
here means the rewrite lands in the release commit and the tag,
next to the versions release:prepare rewrites itself. -->
<preparationGoals>clean verify antrun:run@sync-userguide-sample-versions</preparationGoals>
<!-- No completionGoals. It would run after the poms are bumped to the
next SNAPSHOT, and invoking any goal across the reactor then needs
that SNAPSHOT's artifacts, which do not exist yet, so the release
aborts after tagging. So the samples keep the released version
after a release, which is what you want anyway: master's samples
point at a real artifact instead of a SNAPSHOT. -->
</configuration>
</plugin>
<plugin>
<artifactId>maven-site-plugin</artifactId>
<version>3.22.0</version>
</plugin>
<plugin>
<groupId>org.codehaus.gmavenplus</groupId>
<artifactId>gmavenplus-plugin</artifactId>
<version>5.1.0</version>
<dependencies>
<dependency>
<groupId>org.apache.groovy</groupId>
<artifactId>groovy</artifactId>
<version>${groovy.version}</version>
</dependency>
<dependency>
<groupId>org.apache.groovy</groupId>
<artifactId>groovy-ant</artifactId>
<version>${groovy.version}</version>
</dependency>
<dependency>
<groupId>org.apache.groovy</groupId>
<artifactId>groovy-xml</artifactId>
<version>${groovy.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>3.2.0</version>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.8.0</version>
</plugin>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.5.0</version>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.16.0</version>
</plugin>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.11.0</version>
</plugin>
<plugin>
<artifactId>maven-install-plugin</artifactId>
<version>3.2.0</version>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>3.5.1</version>
<!-- AXIS2-6040: Automatic-Module-Name defined per-module (not global).
A global ${project.artifactId} approach fails because hyphens in
artifactIds (e.g., axis2-resource-bundle) are invalid in Java
module names. Each module defines its own name with hyphens
replaced by dots (e.g., org.apache.axis2.resource.bundle). -->
</plugin>
<plugin>
<artifactId>maven-plugin-plugin</artifactId>
<version>${maven-plugin-tools.version}</version>
</plugin>
<plugin>
<artifactId>maven-plugin-report-plugin</artifactId>
<version>${maven-plugin-tools.version}</version>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.5.0</version>
</plugin>
<plugin>
<artifactId>maven-source-plugin</artifactId>
<version>3.4.0</version>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire.version}</version>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<version>${surefire.version}</version>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.5.1</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>3.6.2</version>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>6.1.2</version>
<configuration>
<instructions>
<_bundleannotations />
</instructions>
</configuration>
</plugin>
<plugin>
<groupId>net.nicoulaj.maven.plugins</groupId>
<artifactId>checksum-maven-plugin</artifactId>
<version>1.11</version>
<configuration>
<algorithms>
<algorithm>SHA-512</algorithm>
</algorithms>
</configuration>
</plugin>
<plugin>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>3.9.0</version>
</plugin>
<plugin>
<groupId>com.github.veithen.maven</groupId>
<artifactId>xjc-maven-plugin</artifactId>
<version>0.2.1</version>
</plugin>
<plugin>
<groupId>com.github.veithen.maven</groupId>
<artifactId>wsimport-maven-plugin</artifactId>
<version>0.3.0</version>
</plugin>
<plugin>
<groupId>org.eclipse.jetty.ee10</groupId>
<artifactId>jetty-ee10-maven-plugin</artifactId>
<version>${jetty.version}</version>
</plugin>
<plugin>
<groupId>org.eclipse.jetty.ee10</groupId>
<artifactId>jetty-ee10-jspc-maven-plugin</artifactId>
<version>${jetty.version}</version>
</plugin>
<plugin>
<groupId>com.github.veithen.daemon</groupId>
<artifactId>daemon-maven-plugin</artifactId>
<version>0.6.4</version>
</plugin>
<plugin>
<groupId>com.github.veithen.maven</groupId>
<artifactId>resolver-proxy-maven-plugin</artifactId>
<version>0.6.0</version>
</plugin>
<plugin>
<artifactId>maven-invoker-plugin</artifactId>
<version>3.10.1</version>
<configuration>
<javaHome>${java.home}</javaHome>
<!-- Enable the JaCoCo agent. -->
<mavenOpts>${argLine}</mavenOpts>
<streamLogsOnFailures>true</streamLogsOnFailures>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-archetype-plugin</artifactId>
<version>${maven-archetype.version}</version>
</plugin>
<!-- Use released 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>2.0.0</version>
</plugin>
<plugin>
<groupId>org.apache.axis2</groupId>
<artifactId>axis2-mar-maven-plugin</artifactId>
<version>2.0.0</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>3.6.3</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireMavenVersion>
<version>3.6.0</version>
</requireMavenVersion>
<requireJavaVersion>
<!-- We require Java 17+ for the build, supporting up to Java 25 -->
<version>[17,26)</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>
<bannedDependencies>
<excludes>
<exclude>org.eclipse.jetty.toolchain:jetty-jakarta-servlet-api</exclude>
</excludes>
</bannedDependencies>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.15</version>
<executions>
<execution>
<id>prepare-agent</id>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<includes>
<include>org.apache.axis2.*</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.github.veithen.alta</groupId>
<artifactId>alta-maven-plugin</artifactId>
<version>0.8.1</version>
<executions>
<!-- Automatically configure the Byte Buddy agent if it's present in the dependencies.
This avoids problems with installation at runtime. -->
<execution>
<id>byte-buddy-agent</id>
<goals>
<goal>generate-properties</goal>
</goals>
<configuration>
<name>argLine</name>
<value>-javaagent:%file%</value>
<artifactSet>
<dependencySet>
<scope>test</scope>
<includes>
<include>net.bytebuddy:byte-buddy-agent:jar:*</include>
</includes>
</dependencySet>
</artifactSet>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<!-- Make test execution deterministic -->
<runOrder>alphabetical</runOrder>
<redirectTestOutputToFile>true</redirectTestOutputToFile>
<trimStackTrace>false</trimStackTrace>
<systemPropertyVariables>
<java.io.tmpdir>${project.build.directory}/tmp</java.io.tmpdir>
<user.home>${project.build.directory}/tmp</user.home>
</systemPropertyVariables>
</configuration>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<configuration>
<redirectTestOutputToFile>true</redirectTestOutputToFile>
<systemPropertyVariables>
<java.io.tmpdir>${project.build.directory}/tmp</java.io.tmpdir>
<user.home>${project.build.directory}/tmp</user.home>
</systemPropertyVariables>
</configuration>
</plugin>
<plugin>
<groupId>com.github.veithen.maven</groupId>
<artifactId>jacoco-report-maven-plugin</artifactId>
<version>0.5.0</version>
<executions>
<execution>
<goals>
<goal>process</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.jacoco</groupId>
<artifactId>org.jacoco.report</artifactId>
<version>${jacoco.version}</version>
</dependency>
<dependency>
<groupId>org.jacoco</groupId>
<artifactId>org.jacoco.core</artifactId>
<version>${jacoco.version}</version>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm</artifactId>
<version>${asm.version}</version>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-commons</artifactId>
<version>${asm.version}</version>
</dependency>
<dependency>
<groupId>org.ow2.asm</groupId>
<artifactId>asm-tree</artifactId>
<version>${asm.version}</version>
</dependency>
</dependencies>
</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>
<artifactId>maven-antrun-plugin</artifactId>
<!-- Not inherited: preparationGoals runs across the whole reactor,
and an inherited execution resolves ${basedir} to each child,
so it looked for modules/resource-bundle/modules/samples/... and
failed the release. Children now have the goal with no target and
do nothing; the rewrite happens once, at the root. -->
<inherited>false</inherited>
<executions>
<execution>
<!-- Deliberately bound to no phase: an ordinary build must not
rewrite checked-in sample poms. maven-release-plugin invokes
it by id (see preparationGoals above); it can also be run by
hand as
mvn antrun:run@sync-userguide-sample-versions
which is what the release guide tells the RM to do when
cutting by hand rather than with release:prepare. -->
<id>sync-userguide-sample-versions</id>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target xmlns:if="ant:if" xmlns:unless="ant:unless">
<!-- Only sync for a real release version. release:prepare
transforms the poms first, so ${project.version} is the
release version by the time this runs. A dry run does
not transform them, so this is a SNAPSHOT and the whole
body is skipped: without the guard a dry run would
rewrite the samples off the last released version and
leave them staged, since nothing reverts a dry run. -->
<condition property="axis2.syncing.a.release">
<not>
<contains string="${project.version}" substring="-SNAPSHOT"/>
</not>
</condition>
<echo unless:set="axis2.syncing.a.release"
message="${project.version} is a SNAPSHOT - leaving the userguide sample poms alone"/>
<sequential if:set="axis2.syncing.a.release">
<echo message="Setting axis2.version to ${project.version} in the userguide Spring Boot samples"/>
<replaceregexp
match="&lt;axis2\.version&gt;[^&lt;]*&lt;/axis2\.version&gt;"
replace="&lt;axis2.version&gt;${project.version}&lt;/axis2.version&gt;"
byline="true">
<fileset dir="${basedir}/modules/samples/userguide/src/userguide"
includes="*/pom.xml"/>
</replaceregexp>
<!-- replaceregexp reports nothing when it matches nothing, so a
renamed or dropped property would leave a sample pinned to a
stale version and the release would carry on quietly. Count
the poms, count the ones now carrying this version, and fail
if they differ. -->
<resourcecount property="userguide.pom.count">
<fileset dir="${basedir}/modules/samples/userguide/src/userguide"
includes="*/pom.xml"/>
</resourcecount>
<resourcecount property="userguide.synced.count">
<fileset dir="${basedir}/modules/samples/userguide/src/userguide"
includes="*/pom.xml">
<contains text="&lt;axis2.version&gt;${project.version}&lt;/axis2.version&gt;"/>
</fileset>
</resourcecount>
<!-- Stage them. maven-release-plugin only transforms reactor
poms, so without this the rewrite stays an unstaged working-tree
change and the release commit and tag ship the old version;
verified by rehearsing release:prepare on a throwaway clone.
The commit phase takes whatever is staged, so this is enough.
failonerror is deliberate: a release that cannot stage these
must stop rather than tag the wrong versions. -->
<exec executable="git" dir="${basedir}" failonerror="true">
<arg value="add"/>
<arg value="--"/>
<arg value="modules/samples/userguide/src/userguide"/>
</exec>
<fail message="axis2.version sync found no userguide sample poms under modules/samples/userguide/src/userguide - the samples moved or were renamed, and the sync is now doing nothing">
<condition>
<equals arg1="${userguide.pom.count}" arg2="0"/>
</condition>
</fail>
<fail message="axis2.version sync reached only ${userguide.synced.count} of ${userguide.pom.count} userguide sample poms - check the property name in each">
<condition>
<not>
<equals arg1="${userguide.pom.count}" arg2="${userguide.synced.count}"/>
</not>
</condition>
</fail>
</sequential>
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.gmavenplus</groupId>
<artifactId>gmavenplus-plugin</artifactId>
<executions>
<execution>
<id>initialize</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()
// Skip maven-invoker-plugin if tests are skipped.
if (session.systemProperties['maven.test.skip'] == 'true' || session.systemProperties['skipTests'] == 'true') {
project.properties['invoker.skip'] = 'true'
}
]]></script>
</scripts>
</configuration>
</execution>
<execution>
<id>check-project-metadata</id>
<phase>verify</phase>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<skipScriptExecution>${skipScmValidation}</skipScriptExecution>
<scripts>
<script><![CDATA[
// Ensure that the <scm> element is present and correctly populated. This prevents
// maven-release-plugin from adding an <scm> element in a location that is then rejected by
// tidy-maven-plugin.
// Only run SCM validation at the parent level, skip for child modules
if (project.artifactId == 'axis2') {
if (project.scm.url != "https://gitbox.apache.org/repos/asf?p=axis-axis2-java-core.git;a=summary") {
throw new Error('project.scm.url not set correctly')
}
if (project.scm.connection != "scm:git:https://gitbox.apache.org/repos/asf/axis-axis2-java-core.git") {
throw new Error('project.scm.connection not set correctly')
}
if (project.scm.developerConnection != "scm:git:https://gitbox.apache.org/repos/asf/axis-axis2-java-core.git") {
throw new Error('project.scm.developerConnection not set correctly')
}
println("SCM validation passed for parent project")
} else {
println("SCM validation skipped for child module: " + project.artifactId)
}
]]></script>
</scripts>
</configuration>
</execution>
<execution>
<id>prepare-site</id>
<phase>pre-site</phase>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<scripts>
<script>
import java.time.*
import java.time.format.*
project.properties['release_date'] = DateTimeFormatter.ofPattern("MMMM dd, yyyy").withZone(ZoneId.of("Z")).format(OffsetDateTime.parse(project.properties['project.build.outputTimestamp']).toInstant())
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><!-- site-deploy is not finding our JavaDoc, so fix that with some maven-resources-plugin config -->
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>copy-resources</id>
<phase>package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.parent.basedir}/target/staging/apidocs</outputDirectory>
<resources>
<resource>
<directory>${project.parent.basedir}/apidocs/target/reports/apidocs</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-publish-plugin</artifactId>
<version>3.3.0</version>
</plugin>
<plugin>
<groupId>com.github.veithen.maven</groupId>
<artifactId>eclipse-settings-maven-plugin</artifactId>
<version>0.3.0</version>
<executions>
<execution>
<goals>
<goal>apply</goal>
</goals>
</execution>
</executions>
<configuration>
<bundles>
<bundle>
<symbolicName>org.eclipse.jdt.core</symbolicName>
<properties>
<property>
<name>org.eclipse.jdt.core.formatter.comment.line_length</name>
<value>100</value>
</property>
<property>
<name>org.eclipse.jdt.core.formatter.lineSplit</name>
<value>100</value>
</property>
<property>
<name>org.eclipse.jdt.core.formatter.tabulation.char</name>
<value>space</value>
</property>
<property>
<name>org.eclipse.jdt.core.formatter.indentation.size</name>
<value>4</value>
</property>
</properties>
</bundle>
<bundle>
<symbolicName>org.eclipse.jdt.ui</symbolicName>
<properties>
<property>
<name>org.eclipse.jdt.ui.text.custom_code_templates</name>
<value><![CDATA[<?xml version="1.0" encoding="UTF-8" standalone="no"?><templates><template autoinsert="false" context="newtype_context" deleted="false" description="Newly created files" enabled="true" id="org.eclipse.jdt.ui.text.codetemplates.newtype" name="newtype">/*
* 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.
*/
$${filecomment}
$${package_declaration}
$${typecomment}
$${type_declaration}</template></templates>]]></value>
</property>
</properties>
</bundle>
</bundles>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tidy-maven-plugin</artifactId>
<version>1.4.1</version>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<artifactId>maven-project-info-reports-plugin</artifactId>
<inherited>false</inherited>
<reportSets>
<reportSet>
<reports>
<report>issue-management</report>
<report>mailing-lists</report>
<report>team</report>
</reports>
</reportSet>
</reportSets>
</plugin>
</plugins>
</reporting>
<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>
</profiles>
</project>