Subversion Repositories bacoAlunos

Rev

Rev 2018 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2009 es 1
<?xml version="1.0"?>
2
<project name="Hibernate" default="compile" basedir=".">
3
 
4
        <import file="libs.xml"/>
5
 
6
 
7
        <taskdef
8
                        resource="org/aspectj/tools/ant/taskdefs/aspectjTaskdefs.properties">
9
                <classpath>
10
                        <!--<pathelement location="${aspectj}/aspectj-ant.jar"/>-->
11
                        <pathelement location="lib/aspectj/aspectjtools.jar"/>
12
                </classpath>
13
        </taskdef>
14
 
15
 
16
        <target name="compile">
17
                <delete dir="build/ant/classes"/>
18
                <mkdir dir="build/ant/classes"/>
19
 
20
 
21
                <iajc  source="1.8" target="1.8" destdir="build/ant/classes" classpath="lib/aspectj/aspectjrt.jar" classpathref="pathref">
22
                    <sourceroots>
23
                        <pathelement location="src/java"/>
24
                        <pathelement location="src/gen"/>
25
                    </sourceroots>
26
                </iajc>
27
 
28
 
29
 
30
                <copy file="conf/hibernate.cfg.xml" todir="build/ant/classes/pt/estgp/es/exemplos/hibernate"/>
31
                <copy file="conf/log4j.properties" todir="build/ant/classes"/>
32
                <copy todir="build/ant/classes">
33
                        <fileset dir="src/java">
34
                                <include name="**/*.hbm.xml"/>
35
                        </fileset>
36
                </copy>
37
 
38
 
39
                <copy file="conf/jdbc.properties" todir="build/ant/classes/pt/estgp/es/exemplos/hibernate"/>
40
                <replace file="build/ant/classes/pt/estgp/es/exemplos/hibernate/jdbc.properties">
41
                        <replacefilter token="@database.username@" value="${database.username}"/>
42
                        <replacefilter token="@database.password@" value="${database.password}"/>
43
                        <replacefilter token="@database.connection.url@" value="${database.connection.url}"/>
44
                </replace>
45
                <replace file="build/ant/classes/pt/estgp/es/exemplos/hibernate/hibernate.cfg.xml">
46
                        <replacefilter token="@database.username@" value="${database.username}"/>
47
                        <replacefilter token="@database.password@" value="${database.password}"/>
48
                        <replacefilter token="@database.connection.url@" value="${database.connection.url}"/>
49
                        <replacefilter token="@hibernate.show.sql@" value="${hibernate.show.sql}"/>
50
                </replace>
51
        </target>
52
 
53
        <target name="build.war" depends="compile">
54
                <delete dir="build/ant/war"/>
55
                <mkdir dir="build/ant/war"/>
56
                <copy todir="build/ant/war">
57
                        <fileset dir="src/web">
58
                                <include name="**/*.*"/>
59
                        </fileset>
60
                </copy>
61
                <mkdir dir="build"/>
62
                <mkdir dir="build/ant"/>
63
                <mkdir dir="build/ant/war"/>
64
                <mkdir dir="build/ant/war/WEB-INF"/>
65
                <mkdir dir="build/ant/war/WEB-INF/classes"/>
66
                <mkdir dir="build/ant/war/WEB-INF/lib"/>
67
                <copy overwrite="true" todir="build/ant/war/WEB-INF" file="conf/web/web.xml"/>
68
                <copy overwrite="true" todir="build/ant/war/WEB-INF" file="conf/web/struts-default.xml"/>
69
                <copy overwrite="true" todir="build/ant/war/WEB-INF" file="conf/web/tiles-default.xml"/>
70
                <copy todir="build/ant/war/WEB-INF/classes">
71
                        <fileset dir="build/ant/classes">
72
                                <include name="**/*.*"/>
73
                        </fileset>
74
                </copy>
75
 
76
                <copy todir="build/ant/war/WEB-INF/lib">
77
                        <fileset dir="lib/aspectj">
78
                                <include name="*.*"/>
79
                        </fileset>
80
                        <fileset dir="lib/commons">
81
                                <include name="*.*"/>
82
                        </fileset>
83
                        <fileset dir="lib/dom4j">
84
                                <include name="*.*"/>
85
                        </fileset>
86
                        <fileset dir="lib/log4j">
87
                                <include name="*.*"/>
88
                        </fileset>
89
                        <fileset dir="lib/hibernate/hibernate3">
90
                                <include name="*.*"/>
91
                        </fileset>
92
                        <fileset dir="lib/hibernate/mysql">
93
                                <include name="*.*"/>
94
                        </fileset>
95
                        <fileset dir="lib/structs">
96
                                <include name="*.*"/>
97
                        </fileset>
98
                </copy>
99
                <delete file="build/ant/${tomcat.war.filename}"/>
100
                <jar destfile="build/ant/${tomcat.war.filename}">
101
                        <fileset dir="build/ant/war">
102
                            <include name="**/*.*"/>
103
                        </fileset>
104
                </jar>
105
 
106
                <copy file="build/ant/${tomcat.war.filename}" todir="${tomcat.home}/webapps" overwrite="true"/>
107
 
108
        </target>
109
 
110
        <target name="create.context.tomcat.file">
111
                <copy file="conf/tomcat/project.xml" todir="build/ant" overwrite="true"/>
112
                <replace file="build/ant/project.xml">
113
            <replacefilter token="@build.dir.war@" value="${basedir}${file.separator}build${file.separator}ant${file.separator}war${file.separator}"/>
114
            <replacefilter token="@context.path@" value="${web.path}"/>
115
        </replace>
116
        </target>
117
 
118
        <target name="testar" depends="compile">
119
                <java classname="pt.estgp.es.exemplos.hibernate.Main"  classpath="build/ant/classes" classpathref="pathref"/>
120
        </target>
121
 
122
 
123
        <target name="generateUpdateHibernateSql" depends="compile">
124
                <schemaupdate
125
                                properties="build/ant/classes/pt/estgp/es/exemplos/hibernate/jdbc.properties"
126
                                quiet="no"
127
                                text="no">
128
                        <fileset dir="src/java">
129
                                <include name="**/*.hbm.xml"/>
130
                        </fileset>
131
                </schemaupdate>
132
        </target>
133
 
134
        <target name="generateHibernateDomainObjects">
135
                <mkdir dir="src/gen"/>
136
                <replace dir="src/java" value="">
137
                        <include name="**/*.hbm.xml"/>
138
                        <replacefilter token='&lt;timestamp source="db"' value="&lt;timestamp"/>
139
                </replace>
140
 
141
                <hibernatetool>
142
                        <configuration>
143
                                <fileset dir="src/java">
144
                                        <include name="**/*.hbm.xml"/>
145
                                </fileset>
146
                        </configuration>
147
                        <hbm2java
148
                                        jdk5="true"
149
                                        ejb3="false"
150
                                        destdir="src/gen"/>
151
                </hibernatetool>
152
                <delete>
153
                        <fileset dir="src/gen">
154
                                <include name="**/*Impl.java"/>
155
                        </fileset>
156
                </delete>
157
                <replace dir="src/java" value="">
158
                        <include name="**/*.hbm.xml"/>
159
                        <replacefilter token='&lt;timestamp' value='&lt;timestamp source="db"'/>
160
                </replace>
161
        </target>
162
 
163
 
164
        <target name="generateMetrics">
165
                <taskdef name="ckjm" classname="gr.spinellis.ckjm.ant.CkjmTask">
166
                        <classpath>
167
                                <pathelement location="lib/metricas/ckjm-1.9.jar"/>
168
                        </classpath>
169
                </taskdef>
170
                <ckjm outputfile="metricas-desenho-ckjm.txt" format="plain" classdir="build/ant/classes">
171
                        <include name="**/*.class" />
172
                        <extdirs path="lib" />
173
                </ckjm>
174
        </target>
175
 
176
</project>