source: TI01-discovery/trunk/ws-Discovery2/srcgen/buildDiscovery.xml @ 2994

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/TI01-discovery/trunk/ws-Discovery2/srcgen/buildDiscovery.xml@2994
Revision 2994, 7.0 KB checked in by mpritcha, 13 years ago (diff)

Updated build instructions to reflect addition of client.

Line 
1<project basedir="." default="jar.all">
2        <!--Auto generated ant build file-->
3        <property environment="env"/>
4        <property name="axis2.home" value="${env.AXIS2_HOME}"/>
5        <property name="project.base.dir" value="."/>
6        <property name="maven.class.path" value=""/>
7        <property name="name" value="DiscoveryService"/>
8        <property name="src" value="${project.base.dir}/src"/>
9        <property name="test" value="${project.base.dir}/test"/>
10        <property name="build" value="${project.base.dir}/build"/>
11        <property name="classes" value="${build}/classes"/>
12        <property name="lib" value="${build}/lib"/>
13        <property name="resources" value="${project.base.dir}/resources"/>
14        <property name="xbeans.packaged.jar.name" value="XBeans-packaged.jar"/>
15        <property name="jars.ok" value=""/>
16        <property name="src.nongen" value="../src"/>
17        <property name="res.nongen" value="../resources"/>
18        <path id="axis2.class.path">
19                <pathelement path="${java.class.path}"/>
20                <pathelement path="${maven.class.path}"/>
21                <fileset dir="${axis2.home}">
22                        <include name="lib/*.jar"/>
23                </fileset>
24                <fileset dir="${resources}">
25                        <include name="*.jar"/>
26                        <!--<include name="xmlrpc-1.2-patched.jar"/>
27                        <include name="jdom.jar"/>
28                        <include name="jaxen-core.jar"/>
29                        <include name="jaxen-jdom.jar"/>
30                        <include name="saxpath.jar"/>-->
31                </fileset>
32        </path>
33        <target name="init">
34                <mkdir dir="${build}"/>
35                <mkdir dir="${classes}"/>
36                <mkdir dir="${lib}"/>
37                <mkdir dir="${test}"/>
38        </target>
39        <target name="jar.xbeans">
40                <jar basedir="${resources}" destfile="${lib}/${xbeans.packaged.jar.name}" excludes="**/services.xml, **/*.xsd"/>
41        </target>
42        <target name="pre.compile.test" depends="init, jar.xbeans">
43                <!--Test the classpath for the availability of necesary classes-->
44                <available classname="org.apache.xmlbeans.XmlObject" property="xbeans.available" classpathref="axis2.class.path"/>
45                <available classname="javax.xml.stream.XMLStreamReader" property="stax.available" classpathref="axis2.class.path"/>
46                <available classname="org.apache.axis2.engine.AxisEngine" property="axis2.available" classpathref="axis2.class.path"/>
47                <condition property="jars.ok">
48                        <and>
49                                <isset property="xbeans.available"/>
50                                <isset property="stax.available"/>
51                                <isset property="axis2.available"/>
52                        </and>
53                </condition>
54                <!--Print out the availabilities-->
55                <echo message="XmlBeans Availability = ${xbeans.available}"/>
56                <echo message="Stax Availability= ${stax.available}"/>
57                <echo message="Axis2 Availability= ${axis2.available}"/>
58        </target>
59        <target name="compile.src" depends="pre.compile.test,copynongen" if="jars.ok">
60                <javac debug="on" destdir="${classes}" srcdir="${src}">
61                        <classpath location="${lib}/${xbeans.packaged.jar.name}"/>
62                        <classpath refid="axis2.class.path"/>
63                </javac>
64        </target>
65        <target name="compile.test" depends="compile.src" if="jars.ok">
66                <javac debug="on" destdir="${classes}">
67                        <src path="${test}"/>
68                        <classpath location="${lib}/${xbeans.packaged.jar.name}"/>
69                        <classpath refid="axis2.class.path"/>
70                </javac>
71        </target>
72        <target name="echo.classpath.problem" depends="pre.compile.test" unless="jars.ok">
73                <echo message="The class path is not set right!                                Please make sure the following classes are in the classpath                                1. XmlBeans                                2. Stax                                3. Axis2                 "/>
74        </target>
75        <target name="jar.all" depends="jar.server, jar.client"/>
76        <target name="jar.server" depends="compile.src,echo.classpath.problem" if="jars.ok">
77                <copy toDir="${classes}/META-INF">
78                        <fileset dir="${resources}">
79                                <include name="*.xml"/>
80                                <include name="*.wsdl"/>
81                                <include name="*.xsd"/>
82                                <exclude name="**/schemaorg_apache_xmlbean/**"/>
83                        </fileset>
84                </copy>
85                <copy file="${lib}/${xbeans.packaged.jar.name}" toDir="${classes}/lib"/>
86                <!-- <copy file="${resources}/DiscoveryService.properties" toDir="${classes}"/> -->
87                <!-- <copy file="${resources}/DiscoveryService.xq" toDir="${classes}"/> -->
88                <copy toDir="${classes}/lib">
89                        <fileset dir="${resources}">
90                                <include name="*.jar"/>
91                        </fileset>
92                </copy>
93                <jar destfile="${lib}/${name}.aar">
94                        <fileset excludes="**/Test.class" dir="${classes}"/>
95                </jar>
96        </target>
97        <target name="jar.client" if="jars.ok" depends="compile.test">
98                <jar destfile="${lib}/${name}-test-client.jar">
99                        <fileset dir="${classes}">
100                                <exclude name="**/META-INF/*.*"/>
101                                <exclude name="**/lib/*.*"/>
102                                <exclude name="**/*MessageReceiver.class"/>
103                                <exclude name="**/*Skeleton.class"/>
104                        </fileset>
105                        <fileset dir="${resources}">
106                                <exclude name="**/*.wsdl"/>
107                                <exclude name="**/*.xsd"/>
108                                <exclude name="**/*.xml"/>
109                        </fileset>
110                </jar>
111        </target>
112        <target depends="jar.server" name="make.repo" if="jars.ok">
113                <mkdir dir="${build}/repo/"/>
114                <mkdir dir="${build}/repo/services"/>
115                <copy file="${build}/lib/${name}.aar" toDir="${build}/repo/services/"/>
116        </target>
117        <target depends="make.repo" name="start.server" if="jars.ok">
118                <java classname="org.apache.axis2.transport.http.SimpleHTTPServer" fork="true">
119                        <arg value="${build}/repo"/>
120                        <classpath refid="axis2.class.path"/>
121                </java>
122        </target>
123        <target if="jars.ok" name="run.test" depends="jar.client">
124                <path id="test.class.path">
125                        <pathelement location="${lib}/${name}-test-client.jar"/>
126                        <path refid="axis2.class.path"/>
127                </path>
128                <mkdir dir="${build}/test-reports/"/>
129                <junit printsummary="yes" haltonfailure="yes">
130                        <classpath refid="test.class.path"/>
131                        <formatter type="plain"/>
132                        <batchtest fork="yes" toDir="${build}/test-reports/">
133                                <fileset dir="${test}">
134                                        <include name="**/*Test*.java"/>
135                                </fileset>
136                        </batchtest>
137                </junit>
138        </target>
139        <target name="clean">
140                <delete dir="${build}"/>
141        </target>
142        <target name="javadoc" depends="compile.src" description="Create Javadoc API documentation">
143                <mkdir dir="${build}/docs/api"/>
144                <javadoc sourcepath="${src}" destdir="${build}/docs/api" packagenames="*"/>
145   </target>
146        <target depends="jar.client" name="run.client" if="jars.ok">
147                <!-- <setproxy proxyHost="wwwcache.rl.ac.uk" proxyPort="8080"/> -->
148                <echo message="JAVA_HOME = ${env.JAVA_HOME}"/>
149                <java classname="ndg.services.discovery.DiscoveryServiceClient" fork="true">
150                        <!-- <arg value="${build}/repo"/> -->
151                        <classpath refid="axis2.class.path"/>
152                        <classpath location="${lib}/${name}-test-client.jar"/>
153                </java>
154        </target>
155   <target name="copynongen">
156                <!-- Copy non-auto-generated src to source tree -->
157                <!-- NB. Overwrites even if files in toDir are newer -->
158                <copy toDir="${src}" overwrite="true"> 
159                <!-- <copy toDir="${src}" verbose="true"> -->
160                        <fileset dir="${src.nongen}">
161                                <include name="**/*.java"/>
162                        </fileset>
163                </copy>
164                <copy toDir="${resources}" overwrite="true" verbose="true">
165                        <fileset dir="${res.nongen}">
166                                <!-- <include name="**/*.xq"/> -->
167                                <!-- <include name="**/*.properties"/> -->
168                                <include name="**/*.jar"/>
169                        </fileset>
170                </copy>
171   </target>
172</project>
Note: See TracBrowser for help on using the repository browser.