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