1 <project name="hayashi" default="all" basedir=".">
2 <property name="src" value="${basedir}/src" />
3 <property name="doc" value="${basedir}/doc" />
4 <property name="report" value="${basedir}/report" />
5 <property file="build.properties" />
6 <property name="appname" value="hayashi"></property>
7 <property name="version" value="0223"></property>
9 <path id="compile.classpath">
10 <pathelement location="lib/junit.jar"/>
11 <pathelement location="lib/xercesImpl.jar"/>
12 <pathelement location="lib/mail-1.4.jar"/>
13 <pathelement location="lib/activation-1.1.jar"/>
14 <pathelement location="lib/servlet-api.jar"/>
21 <target name="prepare" depends="init">
23 <mkdir dir="${doc}" />
24 <mkdir dir="${report}"/>
28 <target name="clean" description="Delete build directory">
30 <fileset dir="${src}" includes="**/*.class" />
35 <target name="compile" depends="prepare" description="Compile Java Sources">
36 <javac srcdir="${src}" destdir="${src}" encoding="UTF-8"
37 target="1.5" optimize="off" debug="on" verbose="false">
38 <include name="**/*.java" />
39 <classpath refid="compile.classpath"/>
45 実行させるには、PATHにJDKの「JAVA_HOME/bin」を追加する必要がある。
47 <target name="javadoc" depends="compile" description="Create Javadoc API documentation">
48 <mkdir dir="${doc}/api" />
54 destdir="${doc}/api" >
55 <link href="http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/" />
56 <link href="http://java.sun.com/products/javamail/javadocs/" />
61 <target name="makejar" depends="compile" description="make hayashi.jar">
62 <delete file="${appname}_${version}.jar"/>
64 <format property="ts" pattern="yyyy/MM/dd-HH:mm:ss-z"/>
66 <jar destfile="${appname}_${version}.jar">
67 <fileset file="README.txt"/>
68 <fileset dir="test" includes="**/*.class,**/*.java" />
69 <fileset dir="${src}" includes="**/*.class,**/*.java" />
71 <attribute name="Implementation-Title" value="${appname}"/>
72 <attribute name="Implementation-Version" value="hayashi lib ${version}"/>
73 <attribute name="Implementation-Vendor" value="Yuu Hayashi."/>
74 <attribute name="Build-Id" value="${ts} (${user.name} [${os.name} ${os.version} ${os.arch}])"/>
80 <target name="test" depends="compile" description="Run JUnit">
81 <junit printsummary="yes">
82 <classpath refid="compile.classpath"/>
83 <test name="util.money.MoneyTest"/>
87 <target name="report" depends="compile" description="Report Test Results">
88 <junit printsummary="yes">
89 <classpath refid="compile.classpath"/>
90 <formatter type="xml"/>
91 <batchtest fork="yes" todir="${report}">
92 <fileset dir="${src}">
93 <include name="**/*Test.java"/>
97 <junitreport todir="${report}">
98 <fileset dir="${report}">
99 <include name="TEST-*.xml"/>
101 <report format="frames" todir="${report}/html"/>
105 <target name="all" depends="clean, makejar" description="Clean build directory, then compile, and JavaDoc">