<?xml version="1.0" encoding="UTF-8"?>
<!--
	!
	! Copyright 2006 The Apache Software Foundation.
	!
	! Licensed 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>3</version>
	</parent>
	<modelVersion>4.0.0</modelVersion>
	<groupId>org.apache.axis2</groupId>
	<artifactId>axis2</artifactId>
	<version>SNAPSHOT</version>
	<packaging>pom</packaging>
	<name>Apache Axis 2.0</name>
	<modules>
	 	<module>modules/parent</module>
		<module>modules/addressing</module>
		<module>modules/java2wsdl</module>
		<module>modules/kernel</module>
		<module>modules/tool</module>
		<module>modules/adb</module>
		<module>modules/codegen</module>
		<module>modules/adb-codegen</module>
		<module>modules/jibx</module>
		<module>modules/xmlbeans</module>
		<module>modules/json</module>
		<module>modules/mtompolicy</module>
		<module>modules/spring</module>
		<module>modules/savan</module> 
	</modules>
	<profiles>
		<profile>
			<id>java15</id>
			<activation>
				<jdk>1.5</jdk>
			</activation>
			<modules>
				<module>modules/jaxbri</module>
				<module>modules/metadata</module>
				<module>modules/saaj-api</module>
				<module>modules/saaj</module>
				<module>modules/jaxws-api</module>
				<module>modules/jaxws</module>
			</modules>
		</profile>
	</profiles>
	<scm>
		<connection>scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/</connection>
		<developerConnection>scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/</developerConnection>
		<url>http://svn.apache.org/viewvc/webservices/axis2/trunk/java/</url>
	</scm>
	<distributionManagement>
        <repository>
            <id>apache-repo</id>
            <name>Maven Central Repository</name>
            <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url>
        </repository>
        <snapshotRepository>
            <id>apache-snapshots</id>
            <name>Apache Development Repository</name>
            <url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url>
        </snapshotRepository>
    </distributionManagement>
</project>
