OSDN Git Service

test complete: DeleteDir.java
[hayashilib/hayashi.git] / build.xml
1 <project name="hayashi" default="all" basedir=".">\r
2     <property name="src" value="${basedir}/src" />\r
3     <property name="obj" value="${basedir}/classes" />\r
4     <property name="javadoc.dest" value="${basedir}/doc" />\r
5     <property name="report" value="${basedir}/report" />\r
6     <property file="build.properties" />\r
7         <property name="appname" value="hayashi"></property>\r
8         <property name="version" value="0226"></property>\r
9 \r
10         <!--クラスパスを設定 -->\r
11     <path id="compile.classpath">\r
12         <pathelement location="lib/junit.jar"/>\r
13         <pathelement location="lib/xercesImpl.jar"/>\r
14         <pathelement location="lib/mail-1.4.jar"/>\r
15         <pathelement location="lib/activation-1.1.jar"/>\r
16         <pathelement location="lib/servlet-api.jar"/>\r
17                 <pathelement path="${obj}"/>\r
18     </path>\r
19         \r
20 \r
21     <target name="init">\r
22         <tstamp/>\r
23     </target>\r
24 \r
25     <target name="prepare" depends="init">\r
26         <!--\r
27         <mkdir dir="${doc}" />\r
28         <mkdir dir="${report}"/>\r
29         -->\r
30     </target>\r
31 \r
32     <target name="clean" description="Delete build directory">\r
33                 <delete>\r
34                         <fileset dir="${src}" includes="**/*.class" />\r
35                         <fileset dir="${obj}" includes="**/*.class" />\r
36                 </delete>\r
37     </target>\r
38 \r
39         <!-- コンパイル -->\r
40     <target name="compile" depends="prepare" description="Compile Java Sources">\r
41         <javac srcdir="${src}" destdir="${obj}" encoding="UTF-8"\r
42                 target="1.5" optimize="off" debug="on" verbose="false">\r
43             <include name="**/*.java" />\r
44             <classpath refid="compile.classpath"/>\r
45         </javac>\r
46     </target>\r
47 \r
48         <!--\r
49         Javadoc作成\r
50                 実行させるには、PATHにJDKの「JAVA_HOME/bin」を追加する必要がある。\r
51         -->\r
52         <target name="javadoc" depends="compile" description="Create Javadoc API documentation">\r
53         <mkdir dir="${javadoc.dest}/api" />\r
54         <javadoc\r
55                         packagenames="*"\r
56                         encoding="UTF-8"\r
57                         charset="UTF-8"\r
58                         sourcepath="${src}"\r
59                         destdir="${javadoc.dest}/api" >\r
60                 <link href="http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/" />\r
61                 <link href="http://java.sun.com/products/javamail/javadocs/" />\r
62                 <classpath refid="compile.classpath" />\r
63         </javadoc>\r
64         </target>\r
65 \r
66         <!-- Jarアーカイバの作成 -->\r
67     <target name="makejar" depends="compile" description="make hayashi.jar">\r
68                 <delete file="${appname}_${version}.jar"/>\r
69                 <tstamp>\r
70                         <format property="ts" pattern="yyyy/MM/dd-HH:mm:ss-z"/>\r
71                 </tstamp>\r
72                 <jar destfile="${appname}_${version}.jar">\r
73                         <fileset file="README.txt"/>\r
74                         <fileset dir="test" includes="**/*.class,**/*.java" />\r
75                         <fileset dir="${obj}" includes="**/*.class,**/*.java" />\r
76                         <fileset dir="${javadoc.dest}" includes="**/*.*"/>\r
77                         <manifest>\r
78                                 <attribute name="Implementation-Title"   value="${appname}"/>\r
79                                 <attribute name="Implementation-Version" value="hayashi lib ${version}"/>\r
80                                 <attribute name="Implementation-Vendor"  value="Yuu Hayashi."/>\r
81                                 <attribute name="Build-Id" value="${ts} (${user.name} [${os.name} ${os.version} ${os.arch}])"/>\r
82                         </manifest>\r
83                 </jar>\r
84     </target>\r
85 \r
86 \r
87     <target name="test" depends="compile" description="Run JUnit">\r
88         <junit printsummary="yes">\r
89             <classpath refid="compile.classpath"/>\r
90             <test name="util.money.MoneyTest"/>\r
91         </junit>\r
92     </target>\r
93 \r
94     <target name="report" depends="compile" description="Report Test Results">\r
95         <junit printsummary="yes">\r
96             <classpath refid="compile.classpath"/>\r
97             <formatter type="xml"/>\r
98             <batchtest fork="yes" todir="${report}">\r
99                 <fileset dir="${src}">\r
100                     <include name="**/*Test.java"/>\r
101                 </fileset>\r
102             </batchtest>\r
103         </junit>\r
104         <junitreport todir="${report}">\r
105             <fileset dir="${report}">\r
106                 <include name="TEST-*.xml"/>\r
107             </fileset>\r
108             <report format="frames" todir="${report}/html"/>\r
109         </junitreport>\r
110     </target>\r
111 \r
112     <target name="all" depends="clean, javadoc, makejar" description="Clean build directory, then compile, and JavaDoc">\r
113     </target>\r
114 \r
115 </project>\r