| <?xml version="1.0"?> |
| |
| <!-- |
| 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 |
| |
| https://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 name="HelloWorld" basedir="." default="main"> |
| |
| <property name="src.dir" value="src"/> |
| |
| <property name="build.dir" value="build"/> |
| <property name="classes.dir" value="${build.dir}/classes"/> |
| <property name="jar.dir" value="${build.dir}/jar"/> |
| <property name="lib.dir" value="lib"/> |
| <property name="report.dir" value="${build.dir}/junitreport"/> |
| |
| <path id="application" location="${jar.dir}/${ant.project.name}.jar"/> |
| <path id="classpath"> |
| <fileset dir="${lib.dir}" includes="**/*.jar"/> |
| </path> |
| |
| <property name="main-class" value="oata.HelloWorld"/> |
| |
| <target name="clean"> |
| <delete dir="${build.dir}"/> |
| </target> |
| |
| <target name="compile"> |
| <mkdir dir="${classes.dir}"/> |
| <javac includeantruntime="false" srcdir="${src.dir}" destdir="${classes.dir}" classpathref="classpath"/> |
| <copy todir="${classes.dir}"> |
| <fileset dir="${src.dir}" excludes="**/*.java"/> |
| </copy> |
| </target> |
| |
| <target name="jar" depends="compile"> |
| <mkdir dir="${jar.dir}"/> |
| <jar destfile="${jar.dir}/${ant.project.name}.jar" basedir="${classes.dir}"> |
| <manifest> |
| <attribute name="Main-Class" value="${main-class}"/> |
| </manifest> |
| </jar> |
| </target> |
| |
| <target name="run" depends="jar"> |
| <java classname="${main-class}" fork="true"> |
| <classpath> |
| <path refid="classpath"/> |
| <path refid="application"/> |
| </classpath> |
| </java> |
| </target> |
| |
| <target name="junit" depends="jar"> |
| <mkdir dir="${report.dir}"/> |
| <junit printsummary="yes" tempdir="${build.dir}"> |
| <classpath> |
| <path refid="classpath"/> |
| <path refid="application"/> |
| </classpath> |
| |
| <formatter type="xml"/> |
| |
| <batchtest fork="yes" todir="${report.dir}"> |
| <fileset dir="${src.dir}" includes="**/*Test.java"/> |
| </batchtest> |
| </junit> |
| </target> |
| |
| <target name="junitreport"> |
| <junitreport todir="${report.dir}"> |
| <fileset dir="${report.dir}" includes="TEST-*.xml"/> |
| <report todir="${report.dir}"/> |
| </junitreport> |
| </target> |
| |
| <target name="clean-build" depends="clean,jar"/> |
| |
| <target name="main" depends="clean,run"/> |
| |
| </project> |