Rev 7 | Rev 18 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
1 | fvelez | 1 | <?xml version="1.0"?> |
2 | <project name="estgweb" basedir="." default="help"> |
||
3 | |||
4 | |||
5 | <!-- |
||
6 | ========================================================================================== |
||
7 | ANT TASKS |
||
8 | ========================================================================================== |
||
9 | --> |
||
10 | <target name="help"> |
||
11 | <echo>This is the availible Ant Tasks:</echo> |
||
12 | </target> |
||
13 | |||
14 | |||
15 | <!-- |
||
16 | ========================================================================================== |
||
17 | Path libs definitions and Properties files |
||
18 | ========================================================================================== |
||
19 | --> |
||
20 | <property file="local.properties"/> |
||
21 | <property file="build.properties"/> |
||
22 | |||
23 | <path id="pathToToolsLib"> |
||
24 | <fileset dir="${tomcat.libs.common.home}"> |
||
25 | <include name="**.jar"/> |
||
26 | </fileset> |
||
27 | <fileset dir="${tomcat.libs.ant.home}"> |
||
28 | <include name="**.jar"/> |
||
29 | </fileset> |
||
30 | <fileset dir="${common.lib.dir}/berserk"> |
||
31 | <include name="**/*.jar"/> |
||
32 | </fileset> |
||
33 | <fileset dir="${common.lib.dir}/ldap"> |
||
34 | <include name="**/*.jar"/> |
||
35 | </fileset> |
||
36 | <fileset dir="${common.lib.dir}/hibernate"> |
||
37 | <include name="**/*.jar"/> |
||
38 | </fileset> |
||
39 | <fileset dir="${common.lib.dir}/log4j"> |
||
40 | <include name="**/*.jar"/> |
||
41 | </fileset> |
||
42 | <fileset dir="${common.lib.dir}/jaxb"> |
||
43 | <include name="**/*.jar"/> |
||
44 | </fileset> |
||
45 | <fileset dir="${common.lib.dir}/mysql"> |
||
46 | <include name="**/*.jar"/> |
||
47 | </fileset> |
||
48 | <fileset dir="${common.lib.dir}/commons"> |
||
49 | <include name="**/*.jar"/> |
||
50 | </fileset> |
||
51 | <fileset dir="${common.lib.dir}/web"> |
||
52 | <include name="**/*.jar"/> |
||
53 | </fileset> |
||
54 | <fileset dir="${common.lib.dir}/struts"> |
||
55 | <include name="**/*.jar"/> |
||
56 | </fileset> |
||
57 | </path> |
||
58 | |||
59 | |||
60 | <!-- |
||
61 | ========================================================================================== |
||
62 | General Task |
||
63 | ========================================================================================== |
||
64 | --> |
||
65 | <!--caso queiramos apagar os pregen hbm delPreGenAppScripts--> |
||
66 | <target name="all" depends="clean,initDirs,createConfigurationFiles,generateHibernateDomainObjects,generateHibernateDaoClasses,build,genAppScripts,build.war,dbInit"/> |
||
67 | |||
68 | |||
69 | <!-- |
||
70 | ========================================================================================== |
||
71 | CLEAN TASKS |
||
72 | ========================================================================================== |
||
73 | --> |
||
74 | <target name="clean" description="clean *.class and build dir"> |
||
75 | <delete dir="${build.dir}"/> |
||
76 | <delete dir="${dist.dir}"/> |
||
7 | jmachado | 77 | <delete> |
78 | <fileset dir="${gen.dir.java}"> |
||
79 | <include name="**/*.java"/> |
||
80 | </fileset> |
||
81 | </delete> |
||
1 | fvelez | 82 | <antcall target="initDirs"/> |
83 | </target> |
||
84 | |||
85 | |||
86 | |||
87 | <!-- |
||
88 | ========================================================================================== |
||
89 | CREATE-DIRS |
||
90 | ========================================================================================== |
||
91 | --> |
||
92 | <target name="initDirs"> |
||
93 | <mkdir dir="${log.dir}"/> |
||
94 | <mkdir dir="${data.dir}"/> |
||
95 | <mkdir dir="${build.dir}"/> |
||
96 | <mkdir dir="${build.dir.classes}"/> |
||
97 | <mkdir dir="${build.dir.war}"/> |
||
98 | <delete dir="${dist.dir}"/> |
||
99 | <mkdir dir="${dist.dir}"/> |
||
100 | <mkdir dir="${gen.dir.java}"/> |
||
101 | </target> |
||
102 | |||
103 | |||
104 | |||
105 | <!-- |
||
106 | ========================================================================================== |
||
107 | Tomcat Tasks |
||
108 | ========================================================================================== |
||
109 | --> |
||
110 | <taskdef name="tomcat.reload" classname="org.apache.catalina.ant.ReloadTask" classpathref="pathToToolsLib"/> |
||
111 | <taskdef name="tomcat.remove" classname="org.apache.catalina.ant.RemoveTask" classpathref="pathToToolsLib"/> |
||
112 | <taskdef name="tomcat.roles" classname="org.apache.catalina.ant.RolesTask" classpathref="pathToToolsLib"/> |
||
113 | <taskdef name="tomcat.start" classname="org.apache.catalina.ant.StartTask" classpathref="pathToToolsLib"/> |
||
114 | <taskdef name="tomcat.stop" classname="org.apache.catalina.ant.StopTask" classpathref="pathToToolsLib"/> |
||
115 | <taskdef name="tomcat.undeploy" classname="org.apache.catalina.ant.UndeployTask" classpathref="pathToToolsLib"/> |
||
116 | <taskdef name="tomcat.deploy" classname="org.apache.catalina.ant.DeployTask" classpathref="pathToToolsLib"/> |
||
117 | <taskdef name="tomcat.install" classname="org.apache.catalina.ant.InstallTask" classpathref="pathToToolsLib"/> |
||
118 | |||
119 | |||
120 | <!-- |
||
121 | TOMCAT Instalation Tasks |
||
122 | --> |
||
123 | <target name="tomcat.deployContext" depends="build.war"> |
||
124 | <echo message="${tomcat.manager}"/> |
||
125 | <tomcat.install url="${tomcat.manager}" path="${tomcat.context.path.install}" |
||
126 | config="file://${basedir}/${dist.dir}/estgweb.xml" |
||
127 | username="${tomcat.username}" password="${tomcat.password}" /> |
||
128 | </target> |
||
129 | <target name="tomcat.redeployContext" depends="tomcat.undeploy,build.war" > |
||
130 | <echo message="${tomcat.manager}"/> |
||
131 | <tomcat.install url="${tomcat.manager}" path="${tomcat.context.path.install}" |
||
132 | config="file:/${basedir}/${dist.dir}/estgweb.xml" |
||
133 | username="${tomcat.username}" password="${tomcat.password}" /> |
||
134 | </target> |
||
135 | <target name="tomcat.deploy" depends="build.war" > |
||
136 | <echo message="${tomcat.manager}"/> |
||
137 | <tomcat.deploy url="${tomcat.manager}" path="${tomcat.context.path.install}" |
||
138 | war="file:/${basedir}/${dist.dir}/${tomcat.war.file}" |
||
139 | username="${tomcat.username}" password="${tomcat.password}" /> |
||
140 | </target> |
||
141 | <target name="tomcat.redeploy" depends="tomcat.undeploy,build.war"> |
||
142 | <echo message="${tomcat.manager}"/> |
||
143 | <tomcat.deploy url="${tomcat.manager}" path="${tomcat.context.path.install}" |
||
144 | war="file:/${basedir}/${dist.dir}/${tomcat.war.file}" |
||
145 | username="${tomcat.username}" password="${tomcat.password}" /> |
||
146 | </target> |
||
147 | <target name="tomcat.undeploy"> |
||
148 | <echo message="${tomcat.manager}"/> |
||
149 | <tomcat.undeploy url="${tomcat.manager}" path="${tomcat.context.path.install}" |
||
150 | username="${tomcat.username}" password="${tomcat.password}" /> |
||
151 | </target> |
||
152 | <target name="tomcat.reload"> |
||
153 | <echo message="${tomcat.manager}"/> |
||
154 | <tomcat.reload url="${tomcat.manager}" path="${tomcat.context.path.install}" |
||
155 | username="${tomcat.username}" password="${tomcat.password}" /> |
||
156 | </target> |
||
157 | <target name="tomcat.start"> |
||
158 | <echo message="${tomcat.manager}"/> |
||
159 | <tomcat.start url="${tomcat.manager}" path="${tomcat.context.path.install}" |
||
160 | username="${tomcat.username}" password="${tomcat.password}" /> |
||
161 | </target> |
||
162 | <target name="tomcat.stop"> |
||
163 | <echo message="${tomcat.manager}"/> |
||
164 | <tomcat.stop url="${tomcat.manager}" path="${tomcat.context.path.install}" |
||
165 | username="${tomcat.username}" password="${tomcat.password}" /> |
||
166 | </target> |
||
167 | |||
168 | <!-- |
||
169 | ========================================================================================== |
||
170 | BUILD TASKS, Have no effect now, no revengstrategy defined.... |
||
171 | ========================================================================================== |
||
172 | --> |
||
173 | <target name="build" depends="initDirs" description="Compile All and create conf files"> |
||
174 | <antcall target="compile"/> |
||
175 | <antcall target="createConfigurationFiles"/> |
||
176 | </target> |
||
177 | <target name="compile" depends="initDirs" description="Compile All"> |
||
178 | <javac encoding="UTF-8" destdir="${build.dir.classes}" debug="true" optimize="true" fork="true" deprecation="true" verbose="true" failonerror="true"> |
||
179 | <src path="${src.dir}"/> |
||
180 | <src path="${gen.dir.java}"/> |
||
181 | <classpath refid="pathToToolsLib"/> |
||
182 | </javac> |
||
183 | </target> |
||
184 | <target name="compileToolFiles" description="Compile Mappings Builder"> |
||
185 | <javac destdir="${build.dir.classes}" srcdir="${src.dir}" debug="true" optimize="true" deprecation="true" verbose="true" failonerror="true"> |
||
186 | <include name="${mapping.buider.class.file}"/> |
||
187 | <classpath refid="pathToToolsLib"/> |
||
188 | </javac> |
||
189 | </target> |
||
190 | |||
191 | <!-- |
||
192 | Build distribution files |
||
193 | --> |
||
194 | <target name="dist" depends="build"> |
||
195 | <jar jarfile="${dist.dir}/estgweb.jar"> |
||
196 | <fileset dir="${build.dir.classes}" includes="**/*.class"/> |
||
197 | </jar> |
||
198 | <copy overwrite="true" todir="${dist.dir}"> |
||
199 | <fileset dir="${build.dir.classes}" includes="**/*.properties"/> |
||
200 | <fileset dir="${build.dir.classes}" includes="**/*.xml"/> |
||
201 | </copy> |
||
202 | <copy overwrite="true" todir="${dist.dir}" file="${conf.dir}/tomcat/estgweb.xml"/> |
||
203 | <replace file="${dist.dir}/estgweb.xml" value=""> |
||
204 | <replacefilter token="@build.dir.war@" value="${basedir}${file.separator}build${file.separator}ant${file.separator}war${file.separator}"/> |
||
205 | <replacefilter token="@context.path@" value="${tomcat.context.path}"/> |
||
206 | </replace> |
||
207 | </target> |
||
208 | |||
7 | jmachado | 209 | <target name="copy.jsps.war" description="copy only jsps to war distribution"> |
1 | fvelez | 210 | <copy todir="${build.dir.war}" overwrite="false"> |
211 | <fileset dir="src/web"> |
||
212 | <include name="**/*"/> |
||
213 | </fileset> |
||
214 | </copy> |
||
215 | </target> |
||
216 | |||
217 | <target name="build.war" depends="build,dist" description="Make war distribution"> |
||
218 | <mkdir dir="${build.dir.war}"/> |
||
219 | <mkdir dir="${build.dir.war}/WEB-INF"/> |
||
220 | <mkdir dir="${build.dir.war}/WEB-INF/lib"/> |
||
221 | <copy todir="${build.dir.war}/WEB-INF/lib"> |
||
222 | <fileset dir="${common.lib.dir}/log4j"> |
||
223 | <include name="*.jar"/> |
||
224 | </fileset> |
||
225 | <fileset dir="${common.lib.dir}/berserk"> |
||
226 | <include name="**/*.jar"/> |
||
227 | </fileset> |
||
228 | <fileset dir="${common.lib.dir}/hibernate"> |
||
229 | <include name="**/*.jar"/> |
||
230 | </fileset> |
||
231 | <fileset dir="${common.lib.dir}/log4j"> |
||
232 | <include name="**/*.jar"/> |
||
233 | </fileset> |
||
234 | <fileset dir="${common.lib.dir}/mysql"> |
||
235 | <include name="**/*.jar"/> |
||
236 | </fileset> |
||
237 | <fileset dir="${common.lib.dir}/commons"> |
||
238 | <include name="**/*.jar"/> |
||
239 | </fileset> |
||
240 | <fileset dir="${common.lib.dir}/struts"> |
||
241 | <include name="**/*.jar"/> |
||
242 | </fileset> |
||
10 | jmachado | 243 | <fileset dir="${common.lib.dir}/ldap"> |
244 | <include name="**/*.jar"/> |
||
245 | </fileset> |
||
1 | fvelez | 246 | </copy> |
247 | <copy file="${dist.dir}/estgweb.jar" todir="${build.dir.war}/WEB-INF/lib"/> |
||
248 | <copy todir="${build.dir.war}/WEB-INF" overwrite="true"> |
||
249 | <fileset dir="${conf.dir}/WEB-INF"> |
||
250 | <include name="**/*.*"/> |
||
251 | </fileset> |
||
252 | </copy> |
||
253 | <mkdir dir="${build.dir.war}/WEB-INF/classes"/> |
||
254 | <copy todir="${build.dir.war}/WEB-INF/classes" overwrite="true"> |
||
255 | <fileset dir="${build.dir.classes}"> |
||
256 | <include name="**/*.properties"/> |
||
257 | <include name="**/*.xml"/> |
||
258 | </fileset> |
||
259 | </copy> |
||
260 | <copy todir="${build.dir.war}" overwrite="true"> |
||
261 | <fileset dir="src/web"> |
||
262 | <include name="**/*"/> |
||
263 | </fileset> |
||
264 | </copy> |
||
265 | </target> |
||
266 | |||
267 | <target name="war" depends="build.war"> |
||
268 | <delete file="${dist.dir}/${tomcat.war.file}"/> |
||
269 | <jar destfile="${dist.dir}/${tomcat.war.file}"> |
||
270 | <fileset dir="${build.dir.war}"> |
||
271 | <include name="**/*" /> |
||
272 | </fileset> |
||
273 | </jar> |
||
274 | </target> |
||
275 | |||
276 | |||
277 | <!-- |
||
278 | ========================================================================================== |
||
279 | Generate Configuration Files TASKS |
||
280 | ========================================================================================== |
||
281 | --> |
||
282 | <target name="createConfigurationFiles" depends="copyConfigurationFiles,replaceFiltersConfigurationFiles,generateHibernateCfgXml"/> |
||
283 | |||
284 | <target name="copyConfigurationFiles"> |
||
285 | <copy overwrite="true" todir="${build.dir.classes}"> |
||
286 | <fileset dir="${hbm.dir}" includes="**/*.hbm.xml"/> |
||
287 | </copy> |
||
288 | <copy overwrite="true" todir="${build.dir.classes}"> |
||
289 | <fileset dir="${src.dir}" includes="**/*.xsl"/> |
||
290 | </copy> |
||
291 | <copy overwrite="true" todir="${build.dir.classes}"> |
||
292 | <fileset dir="${conf.dir}/berserk" includes="*.*"/> |
||
293 | </copy> |
||
294 | <copy overwrite="true" todir="${hibernate.cfg.xml.build}" file="${hibernate.cfg.xml}"/> |
||
295 | <copy overwrite="true" todir="${app.properties.build}" file="${app.properties}"/> |
||
296 | <copy overwrite="true" todir="${jdbc.properties.build}" file="${jdbc.properties}"/> |
||
297 | <copy overwrite="true" todir="${ldap.properties.build}" file="${ldap.properties}"/> |
||
298 | <copy overwrite="true" todir="${build.dir.classes}" file="${log4j.properties}"/> |
||
299 | </target> |
||
300 | |||
301 | <target name="replaceFiltersConfigurationFiles"> |
||
302 | <delete file="${build.dir.classes}/MessageResources.properties"/> |
||
303 | <concat encoding="ISO-8859-1" destfile="${build.dir.classes}/MessageResources.properties" append="true"> |
||
304 | <fileset dir="${conf.dir}/language"> |
||
305 | <include name="*.properties" /> |
||
306 | </fileset> |
||
307 | </concat> |
||
308 | <replace file="${jdbc.properties.build}/${jdbc.properties.filename}"> |
||
309 | <replacefilter token="@database.username@" value="${database.username}"/> |
||
310 | <replacefilter token="@database.password@" value="${database.password}"/> |
||
311 | <replacefilter token="@database.connection.url@" value="${database.connection.url}"/> |
||
312 | </replace> |
||
313 | <replace file="${hibernate.cfg.xml.build}/${hibernate.cfg.xml.filename}"> |
||
314 | <replacefilter token="@database.username@" value="${database.username}"/> |
||
315 | <replacefilter token="@database.password@" value="${database.password}"/> |
||
316 | <replacefilter token="@database.connection.url@" value="${database.connection.url}"/> |
||
317 | <replacefilter token="@hibernate.show.sql@" value="${hibernate.show.sql}"/> |
||
318 | </replace> |
||
319 | <replace file="${app.properties.build}/app.properties"> |
||
320 | <replacefilter token="@tmp.dir@" value="${tmp.dir}"/> |
||
321 | <replacefilter token="@out.dir@" value="${out.dir}"/> |
||
322 | </replace> |
||
323 | <replace file="${build.dir.classes}/${log4j.properties.filename}"> |
||
324 | <replacefilter token="@log.file@" value="${log.file}"/> |
||
325 | </replace> |
||
326 | <replace file="${jdbc.properties.build}/${jdbc.properties.filename}"> |
||
327 | <replacefilter token="@database.username@" value="${database.username}"/> |
||
328 | <replacefilter token="@database.password@" value="${database.password}"/> |
||
329 | <replacefilter token="@database.connection.url@" value="${database.connection.url}"/> |
||
330 | </replace> |
||
331 | </target> |
||
332 | <target name="generateHibernateCfgXml" depends="compileToolFiles"> |
||
333 | <!--<delete file="${build.dir.classes}/${hibernate.cfg.xml.filename}"/>--> |
||
334 | <java classname="${mapping.buider.class}" classpath="${build.dir.classes}"> |
||
335 | <arg value="${hibernate.cfg.xml.build}"/> |
||
336 | <arg value="${hibernate.cfg.xml}"/> |
||
337 | <arg value="${package.dir}"/> |
||
338 | </java> |
||
339 | <antcall target="replaceFiltersConfigurationFiles"/> |
||
340 | </target> |
||
341 | <target name="dbInit"> |
||
7 | jmachado | 342 | <!--<delete file="${build.dir.classes}/${hibernate.cfg.xml.filename}"/>--> |
343 | <java classname="pt.estgp.estgweb.examples.DBInit" classpath="${build.dir.classes}" classpathref="pathToToolsLib"/> |
||
1 | fvelez | 344 | |
7 | jmachado | 345 | <antcall target="replaceFiltersConfigurationFiles"/> |
346 | </target> |
||
1 | fvelez | 347 | |
348 | |||
7 | jmachado | 349 | |
1 | fvelez | 350 | <!-- |
351 | Hibernate Tools Task |
||
352 | --> |
||
7 | jmachado | 353 | <taskdef name="hibernatetool" |
354 | classname="org.hibernate.tool.ant.HibernateToolTask" |
||
355 | classpathref="pathToToolsLib" classpath="${build.dir.classes}"/> |
||
1 | fvelez | 356 | <!-- |
357 | ========================================================================================== |
||
358 | GENERATE SQL SCRIPTS |
||
359 | ========================================================================================== |
||
360 | --> |
||
361 | <taskdef name="schemaexport" |
||
362 | classname="org.hibernate.tool.hbm2ddl.SchemaExportTask" |
||
363 | classpathref="pathToToolsLib" classpath="${build.dir.classes}"/> |
||
364 | |||
365 | |||
366 | <target name="genAppScripts" depends="build"> |
||
367 | <schemaexport |
||
368 | properties="${jdbc.properties.build}/${jdbc.properties.filename}" |
||
369 | quiet="no" |
||
370 | text="no" |
||
371 | drop="no" |
||
372 | delimiter=";" |
||
373 | output="${build.dir.classes}/app-scripts.sql"> |
||
374 | <fileset dir="${hbm.dir}"> |
||
375 | <include name="**/*.hbm.xml"/> |
||
376 | </fileset> |
||
377 | </schemaexport> |
||
378 | </target> |
||
379 | |||
380 | <target name="generateHibernateDomainObjects"> |
||
381 | <hibernatetool> |
||
382 | <configuration> |
||
383 | <fileset dir="${hbm.dir}"> |
||
384 | <include name="**/*.hbm.xml"/> |
||
385 | </fileset> |
||
386 | </configuration> |
||
387 | <hbm2java |
||
388 | jdk5="true" |
||
389 | ejb3="false" |
||
390 | destdir="${gen.dir.java}"/> |
||
391 | </hibernatetool> |
||
392 | <delete> |
||
393 | <fileset dir="${gen.dir.java}"> |
||
394 | <include name="**/*Impl.java"/> |
||
395 | </fileset> |
||
396 | </delete> |
||
397 | </target> |
||
398 | |||
399 | |||
400 | <!-- |
||
401 | ========================================================================================== |
||
402 | GENERATE DAO IMPLEMENTATION |
||
403 | ========================================================================================== |
||
404 | --> |
||
405 | <target name="generateHibernateDaoClasses"> |
||
406 | <hibernatetool destdir="${gen.dir.java}" > |
||
407 | <configuration> |
||
408 | <fileset dir="${hbm.dir}"> |
||
409 | <include name="**/*.hbm.xml"/> |
||
410 | </fileset> |
||
411 | </configuration> |
||
412 | <hbmtemplate |
||
413 | filepattern="{class-name}${dao.file.pattern}.java" |
||
414 | templatepath="${dao.template.dir}" |
||
415 | template="${dao.impl.template}" |
||
416 | destdir="${dao.impl.package.dir}"> |
||
417 | <property key="jdk5" value="true"/> |
||
418 | <property key="ejb3" value="false"/> |
||
419 | <property key="dao" value="${dao.file.pattern}"/> |
||
420 | <property key="daoDomainPackage" value="${domain.package}"/> |
||
421 | <property key="daoInterfacesPackage" value="${dao.interfaces.package}"/> |
||
422 | <property key="daoImplPackage" value="${dao.impl.package}"/> |
||
423 | </hbmtemplate> |
||
424 | </hibernatetool> |
||
425 | <delete> |
||
426 | <fileset dir="${gen.dir.java}"> |
||
427 | <include name="**/*ImplDao.java"/> |
||
428 | </fileset> |
||
429 | </delete> |
||
430 | </target> |
||
431 | |||
432 | |||
433 | |||
434 | <!-- |
||
435 | Run Deamon |
||
436 | --> |
||
437 | |||
438 | <!--<target name="run">--> |
||
439 | <!--<java classname="mitra.oaiharvest.harvest.HarvestEngine" classpath="${build.dir.classes}" classpathref="pathToToolsLib"/>--> |
||
440 | <!--<java classname="mitra.oaiharvest.index.IndexEngine" classpath="${build.dir.classes}" classpathref="pathToToolsLib"/>--> |
||
441 | <!--</target>--> |
||
442 | |||
443 | </project> |