1 |
<?xml version="1.0" encoding="UTF-8"?> |
2 |
<!-- $Id$ --> |
3 |
<project name="CS 595G" default="compile" basedir="."> |
4 |
<property file="build.properties"/> |
5 |
<property file="${user.home}/build.properties"/> |
6 |
|
7 |
<property name="app.name" value="cs595g"/> |
8 |
<property name="app.path" value="/${app.name}"/> |
9 |
<property name="app.version" value="0.9"/> |
10 |
<property name="build.home" value="${basedir}/build"/> |
11 |
<property name="catalina.home" value="/usr/share/tomcat5"/> |
12 |
<property name="dist.home" value="${basedir}/dist"/> |
13 |
<property name="manager.url" value="http://localhost:8180/manager"/> |
14 |
<property name="src.home" value="${basedir}/src"/> |
15 |
<property name="web.home" value="${basedir}/web"/> |
16 |
|
17 |
<taskdef name="deploy" classname="org.apache.catalina.ant.DeployTask"/> |
18 |
<taskdef name="list" classname="org.apache.catalina.ant.ListTask"/> |
19 |
<taskdef name="reload" classname="org.apache.catalina.ant.ReloadTask"/> |
20 |
<taskdef name="undeploy" classname="org.apache.catalina.ant.UndeployTask"/> |
21 |
|
22 |
<property name="compile.debug" value="true"/> |
23 |
<property name="compile.deprecation" value="false"/> |
24 |
<property name="compile.optimize" value="true"/> |
25 |
|
26 |
<path id="compile.classpath"> |
27 |
<pathelement location="${catalina.home}/common/classes"/> |
28 |
|
29 |
<fileset dir="${catalina.home}/common/endorsed"> |
30 |
<include name="*.jar"/> |
31 |
</fileset> |
32 |
|
33 |
<fileset dir="${catalina.home}/common/lib"> |
34 |
<include name="*.jar"/> |
35 |
</fileset> |
36 |
|
37 |
<pathelement location="${catalina.home}/shared/classes"/> |
38 |
|
39 |
<fileset dir="${catalina.home}/shared/lib"> |
40 |
<include name="*.jar"/> |
41 |
</fileset> |
42 |
</path> |
43 |
|
44 |
<target name="all" depends="clean,compile" description="Clean build and dist directories, then compile"/> |
45 |
|
46 |
<target name="clean" description="Delete old build and dist directories"> |
47 |
<delete dir="${build.home}"/> |
48 |
<delete dir="${dist.home}"/> |
49 |
</target> |
50 |
|
51 |
<target name="compile" depends="prepare" description="Compile Java sources"> |
52 |
<mkdir dir="${build.home}/WEB-INF/classes"/> |
53 |
|
54 |
<javac srcdir="${src.home}" destdir="${build.home}/WEB-INF/classes" debug="${compile.debug}" deprecation="${compile.deprecation}" optimize="${compile.optimize}"> |
55 |
<classpath refid="compile.classpath"/> |
56 |
</javac> |
57 |
|
58 |
<copy todir="${build.home}/WEB-INF/classes"> |
59 |
<fileset dir="${src.home}" excludes="**/*.java"/> |
60 |
</copy> |
61 |
</target> |
62 |
|
63 |
<target name="dist" depends="compile" description="Create binary distribution"> |
64 |
<mkdir dir="${dist.home}"/> |
65 |
|
66 |
<jar jarfile="${dist.home}/${app.name}-${app.version}.war" basedir="${build.home}"/> |
67 |
</target> |
68 |
|
69 |
<target name="install" depends="compile" description="Install application to servlet container"> |
70 |
<deploy url="${manager.url}" username="${manager.username}" password="${manager.password}" path="${app.path}" localWar="file://${build.home}"/> |
71 |
</target> |
72 |
|
73 |
<target name="list" description="List installed applications on servlet container"> |
74 |
<list url="${manager.url}" username="${manager.username}" password="${manager.password}"/> |
75 |
</target> |
76 |
|
77 |
<target name="prepare"> |
78 |
<mkdir dir="${build.home}"/> |
79 |
<mkdir dir="${build.home}/WEB-INF"/> |
80 |
<mkdir dir="${build.home}/WEB-INF/classes"/> |
81 |
|
82 |
<copy todir="${build.home}"> |
83 |
<fileset dir="${web.home}"/> |
84 |
</copy> |
85 |
</target> |
86 |
|
87 |
<target name="reload" depends="dist" description="Reload application on servlet container"> |
88 |
<reload url="${manager.url}" username="${manager.username}" password="${manager.password}" path="${app.path}"/> |
89 |
</target> |
90 |
|
91 |
<target name="remove" description="Remove application on servlet container"> |
92 |
<remove url="${manager.url}" username="${manager.usrename}" password="${manager.password}" path="${app.path}"/> |
93 |
</target> |
94 |
</project> |