/home/mario/oci/jnb/dataaccess/source/build.xml
|
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project name="jnb112003" default="compile" basedir=".">
3
4 <!-- Include the build-dist properties. Since properties are immutable,
5 this will not override available properties. You do not have to include
6 this in your own build file. -->
7 <property file="build-dist.properties"/>
8 <property name="app.name" value="jnb112003"/>
9 <property name="debug" value="yes"/>
10 <property name="src.java" value="src/java"/>
11 <property name="test.src.dir" value="test/java"/>
12 <property name="test.dir" value="test"/>
13 <property name="test.report.dir" value="test/result"/>
14 <property name="test" value="*"/>
15 <property name="lib.dir" value="lib"/>
16 <property name="build.dir" value="build/ant"/>
17 <property name="build.gen-src.dir" value="src/gen"/>
18 <property name="rsrc.dir" value="resources"/>
19 <property name="hib.config.dir" value="${rsrc.dir}/hibernate-config"/>
20
21 <path id="project.class.path">
22 <pathelement location="${build.dir}"/>
23 <pathelement location="${rsrc.dir}"/>
24 <fileset dir="${lib.dir}">
25 <include name="*.jar"/>
26 </fileset>
27
28 <fileset dir="${xdoclet.lib.dir}">
29 <include name="*.jar"/>
30 </fileset>
31 </path>
32
33 <target name="init">
34 <tstamp/>
35 </target>
36
37 <target name="prepare" depends="init" description="prepare development project">
38 <mkdir dir="${build.dir}"/>
39 <mkdir dir="${lib.dir}"/>
40 <mkdir dir="${src.java}"/>
41 <mkdir dir="${test.src.dir}"/>
42 <mkdir dir="${test.report.dir}"/>
43 </target>
44
45 <!-- ============================================================== -->
46 <!-- Build Hibernate config XML files -->
47 <!-- ============================================================== -->
48
49 <target
50 name="middlegen"
51 description="Run Middlegen"
52 unless="middlegen.skip"
53 depends="prepare">
54
55 <mkdir dir="${build.gen-src.dir}"/>
56
57 <taskdef name="middlegen" classname="middlegen.MiddlegenTask" classpathref="project.class.path"/>
58
59 <middlegen
60 appname="${app.name}"
61 prefsdir="${rsrc.dir}"
62 databaseurl="${database.url}"
63 driver="${database.driver}"
64 username="${database.userid}"
65 password="${database.password}"
66 schema="${database.schema}"
67 catalog="${database.catalog}">
68
69 <!-- Plugins -->
70 <hibernate destination="${hib.config.dir}" package="com.ociweb.bean"/>
71 </middlegen>
72
73 </target>
74
75 <!-- ============================================================== -->
76 <!-- Use Hibernate to generate Java source files from details in the config XML files -->
77 <!-- ============================================================== -->
78 <target name="hibernate" depends="prepare" >
79 <java classname="net.sf.hibernate.tool.hbm2java.CodeGenerator" fork="true" >
80 <classpath refid="project.class.path"/>
81 <arg value="--config=${rsrc.dir}/hbm-java-config.xml"/>
82 <arg value="--output=${build.gen-src.dir}"/>
83 <arg value="--inputdir=${hib.config.dir}/com/ociweb/bean"/>
84 </java>
85 </target>
86
87 <target name="compile.all" depends="compile, compile.unit"/>
88
89 <target name="compile" depends="prepare" description="compile Java source code">
90 <javac destdir="${build.dir}" debug="${debug}" fork="yes">
91 <src path="${build.gen-src.dir}"/>
92 <classpath refid="project.class.path"/>
93 </javac>
94 <javac destdir="${build.dir}" debug="${debug}" fork="yes">
95 <src path="${src.java}"/>
96 <classpath refid="project.class.path"/>
97 </javac>
98 <echo message="source compiled"/>
99 </target>
100
101 <target name="compile.src" description="compile without generate code">
102 <javac destdir="${build.dir}" debug="${debug}" fork="yes">
103 <src path="${src.java}"/>
104 <classpath refid="project.class.path"/>
105 </javac>
106 <echo message="source compiled"/>
107 </target>
108
109 <target name="compile.unit" depends="compile" description="compile Java unit test source code">
110 <javac destdir="${build.dir}" debug="${debug}" fork="yes">
111 <src path="${test.src.dir}"/>
112 <classpath refid="project.class.path"/>
113 </javac>
114 <echo message="unit test source compiled"/>
115 </target>
116
117 <target name="test" depends="compile.unit" description="runs all JUnit tests">
118 <delete dir="${test.report.dir}"/>
119 <mkdir dir="${test.report.dir}"/>
120 <junit printsummary="yes" fork="true" failureproperty="buildFail">
121 <jvmarg value="-Djava.endorsed.dirs=${endorsed.dir}/"/>
122 <classpath refid="project.class.path"/>
123 <batchtest todir="${test.report.dir}">
124 <fileset dir="${test.src.dir}" includes="**/${test}Test.java"/>
125 <formatter type="xml"/>
126 </batchtest>
127 </junit>
128 <junitreport toDir="${test.report.dir}">
129 <fileset dir="${test.report.dir}" includes="**/TEST-*.xml"/>
130 <report format="frames" todir="${test.report.dir}"/>
131 </junitreport>
132 <echo>To view test results, visit ${test.report.dir}/index.html.</echo>
133 <fail if="buildFail">
134 One or more tests had errors or failures. Aborting build...
135 </fail>
136 </target>
137
138 <target name="clean">
139 <delete dir="${build.dir}"/>
140 </target>
141 </project>
142