| <?xml version="1.0"?> |
| <project name="axis2" default="quick" |
| |
| > |
| |
| <!-- |
| This is an ant build file to |
| -invoke maven to build the distribution |
| -copy the created files into the local Maven2 cache |
| -maybe deploy to a local cache, though that is NPE'ing right now. |
| --> |
| |
| |
| <!-- |
| not putting this at the top level as it breaks idea's ant-awareness |
| xmlns:m2="antlib:org.apache.maven.artifact.ant" |
| --> |
| |
| <!--any personal overrides; not read by maven--> |
| <property file="build.properties"/> |
| |
| <!--any personal overrides; also read by maven--> |
| <property file="project.properties"/> |
| <!--read in project properties, including library versions--> |
| <property file="etc/project.properties"/> |
| |
| <target name="default"> |
| |
| </target> |
| |
| <target name="init" > |
| <!--macro for maven --> |
| <presetdef name="maven"> |
| <exec failonerror="true" executable="maven"> |
| </exec> |
| </presetdef> |
| |
| <!-- location of m2 repository (with new layout) --> |
| <property name="m2.repository" location="${user.home}/.m2/repository"/> |
| <!-- original m1 repository --> |
| <property name="m1.repository" location="${user.home}/.maven/repository"/> |
| |
| <property name="project.xml" location="etc/project.xml" /> |
| <!-- pull out the value of the project version from the maven1 file--> |
| <xmlproperty file="${project.xml}" |
| keeproot="true" /> |
| |
| <property name="target.dir" location="target"/> |
| <property name="artifact.title" value="${project.id}-${project.currentVersion}" /> |
| <property name="target.jar" location="${target.dir}/${artifact.title}.jar"/> |
| <property name="target.pom" location="${target.dir}/${artifact.title}.pom"/> |
| |
| </target> |
| |
| <target name="clean" depends="init" |
| description="clean everything"> |
| <maven> |
| <arg value="multiproject:clean"/> |
| </maven> |
| </target> |
| |
| <target name="dist" depends="init" |
| description="make a distribution"> |
| <maven> |
| </maven> |
| </target> |
| |
| <target name="dist-lite" depends="init" |
| description="make a distribution, skip testing"> |
| <maven> |
| <arg value="-Dmaven.test.skip=true" /> |
| </maven> |
| </target> |
| |
| |
| <!-- inline creation of a very minimal (zero dependency) pom --> |
| <target name="m2-pom" depends="init" xmlns:m2="antlib:org.apache.maven.artifact.ant"> |
| <echo message="Creating Pom ${target.pom}" level="verbose"/> |
| <!--ant1.7's echoxml makes this easier --> |
| <echo file="${target.pom}"><![CDATA[<project> |
| <modelVersion>4.0.0</modelVersion> |
| <groupId>${project.id}</groupId> |
| <artifactId>${project.id}</artifactId> |
| <packaging>jar</packaging> |
| <version>${project.currentVersion}</version> |
| <dependencies> |
| <dependency> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| <version>${log4j.version}</version> |
| </dependency> |
| </dependencies> |
| </project> |
| ]]></echo> |
| <m2:pom id="m2.pom" file="${target.pom}"/> |
| </target> |
| |
| |
| <target name="m2-wagons" depends="init" |
| xmlns:m2="antlib:org.apache.maven.artifact.ant"> |
| <property name="wagon.version" value="1.0-alpha-5"/> |
| <m2:install-provider artifactId="wagon-ssh" |
| version="${wagon.version}"/> |
| <m2:install-provider artifactId="wagon-ssh-external" |
| version="${wagon.version}"/> |
| <m2:install-provider artifactId="wagon-file" |
| version="${wagon.version}"/> |
| <m2:install-provider artifactId="wagon-ftp" |
| version="${wagon.version}"/> |
| </target> |
| |
| <target name="ready-to-deploy" depends="m2-pom,dist-lite" /> |
| |
| <target name="m2-install" depends="ready-to-deploy" |
| description="install the libray into the local m2 repository" |
| xmlns:m2="antlib:org.apache.maven.artifact.ant"> |
| <m2:install file="${target.jar}"> |
| <pom refid="m2.pom"/> |
| </m2:install> |
| </target> |
| |
| <target name="m2-filesys-deploy" depends="ready-to-deploy" |
| xmlns:m2="antlib:org.apache.maven.artifact.ant"> |
| <fail unless="filesys.url"> |
| filesys.url needs to be set to a file: url of the local destination |
| for in-filesystem deployment |
| </fail> |
| <m2:deploy file="${target.jar}"> |
| <remoteRepository url="${filesys.url}"/> |
| <pom refid="m2.pom"/> |
| </m2:deploy> |
| </target> |
| |
| <target name="quick" depends="init" |
| description="make a distribution"> |
| <mkdir dir="${basedir}/target/classes/"/> |
| <path id="classpath">
|
| <fileset dir="${lib.dir}">
|
| <include name="**/*.jar"/>
|
| </fileset>
|
| </path>
|
| |
| <javac srcdir="${basedir}/modules"
|
| destdir="${basedir}/target/classes/"
|
| debug="true"
|
| source="1.4"
|
| classpathref="classpath">
|
| <include name="addressing/src/**/*.java"/>
|
| <include name="codegen/src/**/*.java"/>
|
| <include name="common/src/**/*.java"/>
|
| <include name="core/src/**/*.java"/>
|
| <include name="integration/src/**/*.java"/>
|
| <include name="saaj/src/**/*.java"/>
|
| <include name="samples/src/**/*.java"/>
|
| <include name="security/src/**/*.java"/>
|
| <include name="wsdl/src/**/*.java"/>
|
| <include name="xml/src/**/*.java"/>
|
| </javac> |
| <copy todir="${basedir}/target/classes/">
|
| <fileset dir="${basedir}/modules/common/src">
|
| <include name="**/*.properties"/>
|
| <include name="**/*.xsl"/>
|
| </fileset>
|
| <fileset dir="${basedir}/modules/core/conf">
|
| <include name="**/*.properties"/>
|
| </fileset>
|
| <fileset dir="${basedir}/modules/core/src">
|
| <include name="**/axis2.xml"/>
|
| </fileset>
|
| <fileset dir="${basedir}/modules/codegen/src">
|
| <include name="**/*.properties"/>
|
| <include name="**/*.xsl"/>
|
| <include name="**/*.xsd"/>
|
| </fileset>
|
| </copy> |
| <mkdir dir="${basedir}/target/repo/modules"/>
|
| <copy todir="${basedir}/target/repo/modules">
|
| <fileset dir="${basedir}/modules/addressing/target">
|
| <include name="**/*.mar"/>
|
| </fileset>
|
| <fileset dir="${basedir}/modules/security/target">
|
| <include name="**/*.mar"/>
|
| </fileset>
|
| </copy> |
| <copy todir="${basedir}/target/repo">
|
| <fileset dir="${basedir}/modules/core/src/org/apache/axis2/deployment">
|
| <include name="axis2.xml"/>
|
| </fileset>
|
| </copy> |
| </target> |
| |
| |
| </project> |