forked from amahini95/cs56-games-guess-the-capital
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.xml
139 lines (104 loc) · 6.68 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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
<project default="compile">
<!-- build.xml for Choice Points Project 1, S12, CS56
name: @@@ EDUARD STERKIN
updated version: W16, CS56
name: @@@ YUKI MANO-->
<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="projectName" value="cs56-games-guess-the-capital" />
<property name="javadocDest" value="${webRoot}/${projectPath}/javadoc"/>
<property name="javadocURL" value="${webBaseURL}/${projectPath}/javadoc"/>
<property name="javadocLink" value="http://java.sun.com/javase/7/docs/api/"/>
<property name="packagePrefix" value="edu.ucsb.cs56.projects.games.guess_the_capitals" />
<property name="mainClass" value="RunText"/>
<!--property name="viewPackagePrefix" value="${packagePrefix}.view" /-->
<!--property name="ID" value="esterkin"/-->
<property name="issueNum" value="0000768"/>
<!--property name="course" value="cs56"/-->
<!--property name="quarter" value="S12"/-->
<!-- making these right now -->
<!-- possibly going to remove these two -->
<!--property name="projectName" value="${course}_${quarter}_${issueNum}"/-->
<!-- property name="projectPath" value="${course}/${quarter}/issues/${issueNum}"-->
<path id="project.class.path">
<pathelement location="build"/>
<pathelement location="/cs/faculty/pconrad/public_html/cs56/lib/junit-4.8.2jar"/>
</path>
<target name="compile" description="compile my code" >
<mkdir dir="build" />
<javac srcdir="src" destdir="build" includeantruntime="false" debug="true" debuglevel="lines,vars,source" >
<classpath>
<pathelement location="build"/> <pathelement location="lib/junit-4.8.2.jar"/>
</classpath>
</javac>
<copy todir="build/edu/ucsb/cs56/projects/games/guess_the_capitals">
<fileset dir="src/edu/ucsb/projects/games/guess_the_capitals/text"/>
</copy>
</target>
<target name="run" depends="compile" description="run the game">
<java classname="${packagePrefix}.${mainClass}" fork="true">
<classpath refid="project.class.path"/>
</java>
</target>
<target name="clean" description="delete unnecessary files and directories">
<delete dir="javadoc" quiet="true" />
<delete dir="dist" quiet="true" />
<delete dir="temp" quiet="true" />
</target>
<delete dir="build" quiet="true" />
<property name="javadoc_absolute_path" location="javadoc"/>
<target name="javadoc" depends="compile" description="generate javadoc">
<delete dir="javadoc" quiet="true" />
<javadoc destdir="javadoc" author="true" version="true" use="true" >
<fileset dir="src" includes="**/*.java"/>
<classpath refid ="project.class.path" />
<link href="https://docs.oracle.com/javase/8/docs/api/" />
</javadoc>
<echo>
javadoc written to file://{javadoc_absolute_path}/index.html
</echo>
<!-- 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="run JUnit tests">
<junit haltonerror="no" haltonfailure="no">
<classpath>
<pathelement location="lib/junit-4.8.2.jar"/>
<pathelement location="build"/>
</classpath>
<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>
<target name="jar" depends="compile">
<mkdir dir="dist" />
<jar destfile="dist/${projectName}.jar" basedir="build" >
<manifest>
<attribute name="Main-Class" value="${mainClass}"/>
</manifest>
</jar>
</target>
<target name="linenumbers" description="Creates a file containing all source files with line numbers">
<exec executable="bash">
<arg value="-c"/>
<arg value='tree -ifQ src | grep \.java\"$ | xargs pr -n > numberedsource.txt'/>
</exec>
</target>
</project>