<?xml version="1.0" encoding="UTF-8"?>
<project name="hello_world" default="build" basedir=".">
<description></description>
<!-- settings -->
<!-- package name -->
<property name="packagename" value="com.aaa.bbb.ccc" />
<!-- main class -->
<property name="mainclass" value="HelloWorld" />
<!-- jar name -->
<property name="jarname" value="hello_world" />
<!-- src directory -->
<property name="dir.src.root" value="src" />
<property name="dir.src.base" value="src/com/aaa/bbb/ccc" />
<property name="dir.src" value="${dir.src.base}/hello_world" />
<property name="dir.build" value="build" />
<property name="dir.src.classes" value="${dir.build}/classes" />
<property name="dir.src.classes-instrumented" value="${dir.build}/instrumented-classes" />
<property name="dir.dist" value="${dir.build}/dist" />
<property name="dir.dist.lib" value="${dir.dist}/lib" />
<!-- javadoc directory -->
<property name="dir.javadoc" value="doc" />
<!-- lib directory -->
<property name="dir.lib" value="lib" />
<!-- test directory -->
<property name="dir.test.src" value="${dir.src.base}/hello_world_test" />
<property name="dir.test" value="${dir.build}/test" />
<property name="dir.test.classes" value="${dir.test}/classes" />
<property name="dir.test.report" value="${dir.test}/report" />
<property name="dir.test.coverage-report" value="${dir.test}/coverage-report" />
<property name="dir.test.data" value="${dir.test}/data" />
<property name="dir.test.lib" value="${dir.test}/lib" />
<!-- compiler -->
<property name="compiler" value="/usr/bin/javac" />
<!-- Javac Javadoc encoding -->
<property name="encoding" value="UTF-8" />
<!-- classpath -->
<!-- JDBC -->
<path id="classpath.jdbc">
<fileset dir="${dir.lib}">
<include name="ojdbc14.jar" />
<include name="postgresql-9.0-802.jdbc4.jar" />
</fileset>
</path>
<!-- Test -->
<path id="classpath.test">
<pathelement location="${dir.src.classes}" />
<pathelement location="${dir.test.classes}" />
<fileset dir="${dir.dist.lib}">
<include name="*.jar" />
</fileset>
<fileset dir="${dir.test.lib}">
<include name="*.jar" />
</fileset>
</path>
<!-- cobertura uses jar files -->
<path id="classpath.cobertura">
<fileset dir="${dir.lib}">
<include name="cobertura.jar" />
<include name="**/*.jar" />
</fileset>
</path>
<!-- add cobertura -->
<taskdef classpathref="classpath.cobertura" resource="tasks.properties" />
<!-- target -->
<!-- build -->
<target name="build" depends="pretest">
<echo message="" />
</target>
<!-- init build directory -->
<target name="init">
<echo message="" />
<delete dir="${dir.build}" />
<mkdir dir="${dir.build}" />
<mkdir dir="${dir.src.classes}" />
</target>
<!-- compile -->
<target name="compile" depends="init">
<echo message="" />
<javac encoding="${encoding}" srcdir="${dir.src}" destdir="${dir.src.classes}"
executable="${compiler}" includeantruntime="false" debug="true"
debuglevel="vars,lines,source">
<classpath refid="classpath.jdbc" />
</javac>
</target>
<!-- make jar file -->
<target name="jar" depends="compile">
<echo message="" />
<mkdir dir="${dir.dist}" />
<jar basedir="${dir.src.classes}" destfile="${dir.dist}/${jarname}.jar">
<manifest>
<attribute name="Main-Class" value="${packagename}.${mainclass}" />
</manifest>
</jar>
</target>
<!-- copy setting file -->
<target name="copy" depends="jar">
<echo message="" />
<copy todir="${dir.dist}">
<fileset dir=".">
<include name="hello_world.properties" />
<include name="hello_world" />
<include name="install.sh" />
</fileset>
</copy>
<copy todir="${dir.dist.lib}">
<fileset dir="${dir.lib}">
<include name="*jdbc*.jar" />
</fileset>
</copy>
</target>
<!-- pre test -->
<target name="pretest" depends="copy">
<echo message="" />
<delete dir="${dir.test}" />
<mkdir dir="${dir.test}" />
<mkdir dir="${dir.test.classes}" />
<mkdir dir="${dir.test.report}" />
<mkdir dir="${dir.test.coverage-report}" />
<mkdir dir="${dir.test.data}" />
<mkdir dir="${dir.test.lib}" />
<copy todir="${dir.test.lib}">
<fileset dir="${dir.lib}">
<exclude name="*jdbc*.jar" />
</fileset>
</copy>
<copy todir="${dir.test}">
<fileset dir="./test">
<include name="test*.properties" />
</fileset>
</copy>
<copy todir="${dir.test.data}">
<fileset dir="./test/data" />
</copy>
<javac encoding="${encoding}" srcdir="${dir.test.src}" destdir="${dir.test.classes}"
executable="${compiler}" includeantruntime="false" debug="true"
debuglevel="vars,lines,source">
<classpath refid="classpath.test" />
</javac>
</target>
<!-- test execute -->
<target name="test" depends="pretest,jar">
<echo message="" />
<cobertura-instrument todir="${dir.src.classes-instrumented}">
<fileset dir="${dir.src.classes}">
<include name="**/*.class" />
</fileset>
<fileset dir="${dir.test.classes}">
<include name="**/*.class" />
</fileset>
</cobertura-instrument>
<junit fork="yes" printsummary="true" showoutput="false">
<jvmarg value="-Dfile.encoding=${encoding}" />
<classpath location="${dir.src.classes-instrumented}" />
<classpath refid="classpath.test" />
<formatter type="xml" />
<batchtest fork="yes" todir="${dir.test}">
<fileset dir="${dir.test.classes}">
<include name="**/*Test.class" />
</fileset>
</batchtest>
</junit>
<delete dir="${dir.test.report}" />
<delete dir="${dir.test.coverage-report}" />
<mkdir dir="${dir.test.report}" />
<mkdir dir="${dir.test.coverage-report}" />
<junitreport todir="${dir.test}">
<fileset dir="${dir.test}">
<include name="TEST-*.xml" />
</fileset>
<report format="frames" todir="${dir.test.report}" />
</junitreport>
<cobertura-report format="html" srcdir="${dir.src.root}"
destdir="${dir.test.coverage-report}" />
<delete>
<fileset dir="${dir.test}">
<include name="TEST*.xml" />
</fileset>
</delete>
</target>
<!-- make Javadoc -->
<target name="javadoc">
<echo message="" />
<delete dir="${dir.javadoc}" />
<mkdir dir="${dir.javadoc}" />
<javadoc encoding="${encoding}" classpathref="classpath.jdbc"
sourcepath="${dir.src.root}" packagenames="${packagename}" destdir="${dir.javadoc}" />
</target>
<!-- clean -->
<target name="clean">
<echo message="" />
<delete dir="${dir.build}" />
<delete dir="${dir.javadoc}" />
<delete file="hello_world.log.lck" />
<delete file="hello_world.log" />
<delete file="cobertura.ser" />
</target>
</project>
<project name="hello_world" default="build" basedir=".">
<description></description>
<!-- settings -->
<!-- package name -->
<property name="packagename" value="com.aaa.bbb.ccc" />
<!-- main class -->
<property name="mainclass" value="HelloWorld" />
<!-- jar name -->
<property name="jarname" value="hello_world" />
<!-- src directory -->
<property name="dir.src.root" value="src" />
<property name="dir.src.base" value="src/com/aaa/bbb/ccc" />
<property name="dir.src" value="${dir.src.base}/hello_world" />
<property name="dir.build" value="build" />
<property name="dir.src.classes" value="${dir.build}/classes" />
<property name="dir.src.classes-instrumented" value="${dir.build}/instrumented-classes" />
<property name="dir.dist" value="${dir.build}/dist" />
<property name="dir.dist.lib" value="${dir.dist}/lib" />
<!-- javadoc directory -->
<property name="dir.javadoc" value="doc" />
<!-- lib directory -->
<property name="dir.lib" value="lib" />
<!-- test directory -->
<property name="dir.test.src" value="${dir.src.base}/hello_world_test" />
<property name="dir.test" value="${dir.build}/test" />
<property name="dir.test.classes" value="${dir.test}/classes" />
<property name="dir.test.report" value="${dir.test}/report" />
<property name="dir.test.coverage-report" value="${dir.test}/coverage-report" />
<property name="dir.test.data" value="${dir.test}/data" />
<property name="dir.test.lib" value="${dir.test}/lib" />
<!-- compiler -->
<property name="compiler" value="/usr/bin/javac" />
<!-- Javac Javadoc encoding -->
<property name="encoding" value="UTF-8" />
<!-- classpath -->
<!-- JDBC -->
<path id="classpath.jdbc">
<fileset dir="${dir.lib}">
<include name="ojdbc14.jar" />
<include name="postgresql-9.0-802.jdbc4.jar" />
</fileset>
</path>
<!-- Test -->
<path id="classpath.test">
<pathelement location="${dir.src.classes}" />
<pathelement location="${dir.test.classes}" />
<fileset dir="${dir.dist.lib}">
<include name="*.jar" />
</fileset>
<fileset dir="${dir.test.lib}">
<include name="*.jar" />
</fileset>
</path>
<!-- cobertura uses jar files -->
<path id="classpath.cobertura">
<fileset dir="${dir.lib}">
<include name="cobertura.jar" />
<include name="**/*.jar" />
</fileset>
</path>
<!-- add cobertura -->
<taskdef classpathref="classpath.cobertura" resource="tasks.properties" />
<!-- target -->
<!-- build -->
<target name="build" depends="pretest">
<echo message="" />
</target>
<!-- init build directory -->
<target name="init">
<echo message="" />
<delete dir="${dir.build}" />
<mkdir dir="${dir.build}" />
<mkdir dir="${dir.src.classes}" />
</target>
<!-- compile -->
<target name="compile" depends="init">
<echo message="" />
<javac encoding="${encoding}" srcdir="${dir.src}" destdir="${dir.src.classes}"
executable="${compiler}" includeantruntime="false" debug="true"
debuglevel="vars,lines,source">
<classpath refid="classpath.jdbc" />
</javac>
</target>
<!-- make jar file -->
<target name="jar" depends="compile">
<echo message="" />
<mkdir dir="${dir.dist}" />
<jar basedir="${dir.src.classes}" destfile="${dir.dist}/${jarname}.jar">
<manifest>
<attribute name="Main-Class" value="${packagename}.${mainclass}" />
</manifest>
</jar>
</target>
<!-- copy setting file -->
<target name="copy" depends="jar">
<echo message="" />
<copy todir="${dir.dist}">
<fileset dir=".">
<include name="hello_world.properties" />
<include name="hello_world" />
<include name="install.sh" />
</fileset>
</copy>
<copy todir="${dir.dist.lib}">
<fileset dir="${dir.lib}">
<include name="*jdbc*.jar" />
</fileset>
</copy>
</target>
<!-- pre test -->
<target name="pretest" depends="copy">
<echo message="" />
<delete dir="${dir.test}" />
<mkdir dir="${dir.test}" />
<mkdir dir="${dir.test.classes}" />
<mkdir dir="${dir.test.report}" />
<mkdir dir="${dir.test.coverage-report}" />
<mkdir dir="${dir.test.data}" />
<mkdir dir="${dir.test.lib}" />
<copy todir="${dir.test.lib}">
<fileset dir="${dir.lib}">
<exclude name="*jdbc*.jar" />
</fileset>
</copy>
<copy todir="${dir.test}">
<fileset dir="./test">
<include name="test*.properties" />
</fileset>
</copy>
<copy todir="${dir.test.data}">
<fileset dir="./test/data" />
</copy>
<javac encoding="${encoding}" srcdir="${dir.test.src}" destdir="${dir.test.classes}"
executable="${compiler}" includeantruntime="false" debug="true"
debuglevel="vars,lines,source">
<classpath refid="classpath.test" />
</javac>
</target>
<!-- test execute -->
<target name="test" depends="pretest,jar">
<echo message="" />
<cobertura-instrument todir="${dir.src.classes-instrumented}">
<fileset dir="${dir.src.classes}">
<include name="**/*.class" />
</fileset>
<fileset dir="${dir.test.classes}">
<include name="**/*.class" />
</fileset>
</cobertura-instrument>
<junit fork="yes" printsummary="true" showoutput="false">
<jvmarg value="-Dfile.encoding=${encoding}" />
<classpath location="${dir.src.classes-instrumented}" />
<classpath refid="classpath.test" />
<formatter type="xml" />
<batchtest fork="yes" todir="${dir.test}">
<fileset dir="${dir.test.classes}">
<include name="**/*Test.class" />
</fileset>
</batchtest>
</junit>
<delete dir="${dir.test.report}" />
<delete dir="${dir.test.coverage-report}" />
<mkdir dir="${dir.test.report}" />
<mkdir dir="${dir.test.coverage-report}" />
<junitreport todir="${dir.test}">
<fileset dir="${dir.test}">
<include name="TEST-*.xml" />
</fileset>
<report format="frames" todir="${dir.test.report}" />
</junitreport>
<cobertura-report format="html" srcdir="${dir.src.root}"
destdir="${dir.test.coverage-report}" />
<delete>
<fileset dir="${dir.test}">
<include name="TEST*.xml" />
</fileset>
</delete>
</target>
<!-- make Javadoc -->
<target name="javadoc">
<echo message="" />
<delete dir="${dir.javadoc}" />
<mkdir dir="${dir.javadoc}" />
<javadoc encoding="${encoding}" classpathref="classpath.jdbc"
sourcepath="${dir.src.root}" packagenames="${packagename}" destdir="${dir.javadoc}" />
</target>
<!-- clean -->
<target name="clean">
<echo message="" />
<delete dir="${dir.build}" />
<delete dir="${dir.javadoc}" />
<delete file="hello_world.log.lck" />
<delete file="hello_world.log" />
<delete file="cobertura.ser" />
</target>
</project>
0 件のコメント:
コメントを投稿