-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.xml
78 lines (61 loc) · 4.21 KB
/
build.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<project default="compile">
<!-- build.xml for github.com/UCSB-CS56-Projects/cs56-games-rock-paper-scissors
original authors: Dennis Huynh and Aki Stankoski
updated Jordan Nguyen & Brandon Wicka for W15
updated Nicole Moghaddas & Laura Anthony for W16 -->
<property environment="env"/> <!-- load the environment variables -->
<property name="webRoot" value="${env.HOME}/public_html/cs56"/>
<property name="webBaseURL" value="http://www.cs.ucsb.edu/~${env.USER}/cs56"/>
<property name="mainClass" value="edu.ucsb.cs56.projects.games.rock_paper_scissors.RunGame" />
<property name="project" value="cs56-games-rock-paper-scissors"/>
<property name="javadocDest" value="${webRoot}/${project}/javadoc" />
<property name="javadocURL" value="${webBaseURL}/${project}/javadoc"/>
<path id="project.class.path">
<pathelement location="build"/>
<pathelement location="lib/junit-4.8.2.jar"/>
</path>
<target name="compile" description="compile my code">
<mkdir dir="build" />
<javac srcdir="src" destdir="build" debug="true" debuglevel="lines,source" includeantruntime="false">
<classpath refid="project.class.path" />
</javac>
</target>
<target name="run" depends="compile" description="run program">
<java classname="${mainClass}" classpath="build" fork="true" />
</target>
<target name="clean" description="delete unnecessary files and directories">
<delete dir="build" quiet="true" />
<delete dir= "javadoc" quiet="true" />
</target>
<target name="javadoc" depends="compile" description="Put documentation of my code on the web"> <delete dir="javadoc" quiet="true" />
<javadoc destdir="javadoc" author="true" version="true" use="true" >
<fileset dir="src" includes="**/*.java"/>
<classpath refid="project.class.path" />
</javadoc>
<!-- delete the old javadoc -->
<delete quiet="true" dir="${javadocDest}" />
<!-- copy everything you just made to the javadoc destination, and then make it readable -->
<copy todir="${javadocDest}" >
<fileset dir="javadoc"/>
</copy>
<!-- Note: this only does the chmod command on the
javadoc subdirectory and its contents. You MIGHT have to
MANUALLY do the chmod on the parent directories. However,
you should only need to do that once. -->
<chmod dir="${javadocDest}" perm="755" type="dir" includes="**" />
<chmod dir="${javadocDest}" perm="755" type="file" includes="**/*" />
<echo>Javadoc deployed to ${javadocURL}</echo>
</target>
<target name="test" depends="compile" description="Perform unit testing on my code">
<junit haltonerror="no" haltonfailure="no">
<classpath refid="project.class.path" />
<batchtest fork="yes">
<fileset dir="src">
<!-- this will pick up every class with a name ending in Test -->
<include name="**/*Test.java"/>
</fileset>
</batchtest>
<formatter type="plain" usefile="false" />
</junit>
</target>
</project>