-
Notifications
You must be signed in to change notification settings - Fork 2
/
build.xml
188 lines (162 loc) · 6.8 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
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
<project name="gaewicketblog" default="war">
<!-- When you copy this template to your working directories, change the
value of appengine.sdk accordingly. You may also want to use Ant's
property file feature, allowing each developer to have their own
local property file with the path to the SDK from that workspace. -->
<property name="appengine.sdk" location="${user.home}/apps/appengine-java-sdk"/>
<!-- Check that the SDK value is set and seems sane, so we can give a nicer
error if not. -->
<fail message="Please define the appengine.sdk property to point to your SDK directory">
<condition>
<not> <and>
<isset property="appengine.sdk"/>
<available file="${appengine.sdk}/config/user/ant-macros.xml"/>
</and> </not>
</condition>
</fail>
<!-- Pick up the Ant macros and taskdefs for App Engine -->
<import file="${appengine.sdk}/config/user/ant-macros.xml"/>
<!-- Remote debug port for dev_appserver -->
<property name="debug.port" value="5005"/>
<!-- HTTP port for dev_appserver -->
<property name="http.port" value="8080"/>
<!-- Name of log file to write logs to -->
<property name="log.file" value="app.log"/>
<!-- Number of days worth of logs to retrieve -->
<property name="log.days" value="2"/>
<!-- Maven repository -->
<property name="maven.dir" location="${user.home}/.m2/repository"/>
<!-- Output directory -->
<property name="war.dir" location="target/war"/>
<!-- Wicket version -->
<property name="wicket.version" value="1.4.15"/>
<filelist id="mavendeps" dir="${maven.dir}">
<!--
<file name="javax/jdo/jdo2-api/2.3-ea/jdo2-api-2.3-ea.jar" />
<file name="org/apache/james/apache-mime4j/0.6/apache-mime4j-0.6.jar" />
<file name="commons-codec/commons-codec/1.2/commons-codec-1.2.jar" />
<file name="commons-httpclient/commons-httpclient/3.1/commons-httpclient-3.1.jar" />
<file name="commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar" />
<file name="org/apache/httpcomponents/httpclient/4.0.1/httpclient-4.0.1.jar" />
<file name="org/apache/httpcomponents/httpcore/4.0.1/httpcore-4.0.1.jar" />
<file name="org/apache/httpcomponents/httpmime/4.0.1/httpmime-4.0.1.jar" />
-->
<file name="org/json/json/20090211/json-20090211.jar" />
<file name="org/slf4j/slf4j-api/1.5.11/slf4j-api-1.5.11.jar" />
<file name="org/slf4j/slf4j-jdk14/1.5.11/slf4j-jdk14-1.5.11.jar" />
<file name="org/apache/wicket/wicket/${wicket.version}/wicket-${wicket.version}.jar" />
<file name="org/apache/wicket/wicket-auth-roles/${wicket.version}/wicket-auth-roles-${wicket.version}.jar" />
<file name="org/apache/wicket/wicket-extensions/${wicket.version}/wicket-extensions-${wicket.version}.jar" />
<file name="org/wicketstuff/tinymce/${wicket.version}/tinymce-${wicket.version}.jar" />
<file name="commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar" />
<file name="commons-io/commons-io/1.4/commons-io-1.4.jar" />
<file name="jazzyplugin/jazzyplugin/0.5.2/jazzyplugin-0.5.2.jar" />
<!--
<file name="org/mortbay/jetty/servlet-api/2.5-20081211/servlet-api-2.5-20081211.jar" />
-->
</filelist>
<target name="war" depends="enhance"
description="Assemble the application directory">
<mkdir dir="${war.dir}/WEB-INF"/>
<!-- WEB-INF -->
<copy todir="${war.dir}/WEB-INF">
<fileset dir="src/main/webapp/WEB-INF">
<include name="*.xml"/>
</fileset>
</copy>
<!-- WEB-INF/classes -->
<copy todir="${war.dir}/WEB-INF/classes">
<fileset dir="src/main/resources">
<include name="**/*"/>
</fileset>
<fileset dir="src/main/java">
<exclude name="**/*.java"/>
</fileset>
</copy>
<!-- WEB-INF/lib -->
<copy todir="${war.dir}/WEB-INF/lib" flatten="Yes">
<fileset dir="${appengine.sdk}/lib/user">
<include name="*.jar"/>
</fileset>
<!--
<fileset dir="${appengine.sdk}/lib/impl">
<include name="appengine-api.jar"/>
<include name="appengine-api-labs.jar"/>
<include name="appengine-api-stubs.jar"/>
<include name="appengine-local-runtime.jar"/>
<include name="*.jar"/>
</fileset>
-->
<fileset dir="${appengine.sdk}/lib/user/orm">
<include name="*.jar"/>
</fileset>
<filelist refid="mavendeps"/>
</copy>
<enhance_war war="${war.dir}"/>
</target>
<target name="enhance" depends="compile"
description="Enhance the classes after compilation">
<!-- <enhance_war war="${war.dir}"/> -->
</target>
<target name="compile"
description="Compile the application servlet code">
<mkdir dir="${war.dir}/WEB-INF/classes"/>
<mkdir dir="${war.dir}/WEB-INF/lib"/>
<javac srcdir="src/main/java" destdir="${war.dir}/WEB-INF/classes">
<classpath>
<fileset dir="${appengine.sdk}/lib/user">
<include name="**/*.jar"/>
</fileset>
<fileset dir="${appengine.sdk}/lib/shared">
<include name="**/*.jar"/>
</fileset>
<fileset dir="${appengine.sdk}/lib/impl">
<include name="**/*.jar"/>
</fileset>
<filelist refid="mavendeps" />
</classpath>
</javac>
</target>
<target name="clean"
description="Force a clean slate to rebuild">
<delete dir="${war.dir}"/>
</target>
<target name="runserver" depends="war"
description="Run the dev_appserver">
<dev_appserver war="${war.dir}" port="${http.port}"/>
</target>
<target name="dev_appserver" depends="runserver"/>
<target name="debug" depends="war"
description="Launches dev_appserver with remote debugging enabled">
<echo message="Launching dev_appserver on Web port ${http.port}, Java remote debug port ${debug.port}"/>
<dev_appserver war="${war.dir}" port="${http.port}">
<options>
<arg value="--jvm_flag=-Xdebug"/>
<arg value="--jvm_flag=-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=${debug.port}"/>
</options>
</dev_appserver>
</target>
<target name="update" depends="war"
description="Uploads the application, including indexes">
<appcfg action="update" war="${war.dir}"/>
</target>
<target name="update_indexes" depends="war"
description="Uploads only the application's indexes">
<appcfg action="update_indexes" war="${war.dir}"/>
</target>
<target name="rollback" depends="war"
description="Rolls back any in-progress application update">
<appcfg action="rollback" war="${war.dir}"/>
</target>
<target name="request_logs"
description="Downloads the application's logs">
<appcfg action="request_logs" war="${war.dir}">
<options>
<arg value="--num_days=${log.days}"/>
</options>
<args>
<arg value="${log.file}"/>
</args>
</appcfg>
</target>
</project>