<project name="smt-web" default="entry" basedir=".">
<description>
-- Project profile
Project/Module
- smartplatform web platform build file
Version
- 1.0.0 XXXX XXXX
Author
- XXX, XXX-XXX contacts XXXXX@XXXXXXXXXX.com
-- Building profile
refers Project smt web platform building information.
Author
- XXXXX
Version
- 1.0 XXXXX XXXX
Directory structure check list related Building
- ./build
This directory contains all compiled .class
file and some resource files
need to locate into %CLASSPATH% varible
- ./dist
This directory contains the need-generated
archived file of
the project you builds. officelly is those
.jar file.
In this web project, a web distribution file .war
file would be generated.
Some others property generated archived file is:
.ear files
- ./dist/archive
See property ${archive}
- ./test
This directory contains all test code. All test
source code locates under
directory ${test}/function, ${test}/performance, ...
Besides, the related resource for run all test
code were under directory
${test}/resources
- ./WebContent
./WebContent/WEB-INF/lib
This checked item you should be unknown.
</description>
<!-- set global properties for this build -->
<property name="project" value="smartplatform-web"/>
<property name="version" value="1.0.1"/>
<property name="webapp" location="${project}-${version}"/>
<!--<propertyset id="sourceset">-->
<property name="src" location="src"/>
<property name="test" location="test"/>
<property name="source" location="source"/>
<!--</propertyset>-->
<property name="web.dir" location="WebContent"/>
<property name="lib" location="${web.dir}/WEB-INF/lib"/>
<property name="build.dir" value="build"/>
<!--<propertyset>-->
<property name="build.main" location="${build.dir}/main"/>
<property name="build.test" location="${build.dir}/test"/>
<!--<propertyset></propertyset>-->
<!--</propertyset>-->
<property name="dist" location="dist"/>
<property name="archive" location="${dist}/${version}"/>
<path id="project.class.path">
<fileset dir="${web.dir}/WEB-INF/lib">
<include name="*.jar"/>
</fileset>
<pathelement path="${build.main}"/>
</path>
<target name="init">
<echo>Step 1: init...</echo>
<!-- Create the time stamp -->
<tstamp/>
<delete dir="${build.dir}"></delete>
<delete dir="${webapp}"></delete>
<delete dir="${archive}"></delete>
<!--<delete dir="${dist}"></delete>-->
<!-- Create the build directory structure used by compile -->
<mkdir dir="${build.main}"/>
<mkdir dir="${build.test}"/>
<mkdir dir="${webapp}"/>
<mkdir dir="${dist}"/>
<mkdir dir="${archive}"/>
</target>
<target name="compile" depends="init" description="compile the source " >
<echo>Step 2: compiling...</echo>
<!-- Compile the java code from ${src} into ${build} -->
<javac srcdir="${src}" destdir="${build.main}">
<classpath refid="project.class.path"></classpath>
</javac>
<javac srcdir="${test}" destdir="${build.test}">
<classpath refid="project.class.path"></classpath>
</javac>
</target>
<target name="distribution" depends="compile"
description="generate the distribution" >
<echo>Step 3: distributing...</echo>
<!--
Building distribution files, including .jar distribution files and
web .war distribution files. Belows is a check list files of related
distribution files:
: smartplatform-web-1.0.0.jar
: smartplatform-web-test-1.0.0.jar
: smartplatform-web-1.0.0.war
-->
<!-- Create the distribution directory -->
<mkdir dir="${archive}/lib"/>
<!-- Put everything in ${build} into the smt-web-1.0.0.jar file -->
<jar jarfile="${archive}/lib/${project}-${version}.jar" basedir="${build.main}"/>
<jar jarfile="${archive}/lib/${project}-test-${version}.jar" basedir="${build.test}"/>
<copy todir="${webapp}/WEB-INF/lib" file="${archive}/lib/${project}-${version}.jar" overwrite="true"/>
<copy todir="${webapp}" overwrite="true">
<fileset dir="${web.dir}">
<!--
<exclude name="**/*.java"/>
-->
</fileset>
</copy>
<jar jarfile="${archive}/${project}-${version}.war" basedir="${webapp}"/>
</target>
<target name="entry" depends="distribution, clean">
<echo>Starting...</echo>
<echo>Building actions started up!</echo>
<echo> </echo>
<echo>Target navigation:</echo>
<echo> </echo>
<echo>Step 0: entry...</echo>
<echo>Step 1: init...</echo>
<echo>Step 2: compiling...</echo>
<echo>Step 3: distributing...</echo>
<echo>Step 4: clean...</echo>
<echo> </echo>
<echo>Ended!</echo>
</target>
<target name="clean" description="clean up">
<echo>Step 4: clean...</echo>
<!-- Delete the ${build} and ${dist} directory trees -->
<delete dir="${build.dir}"/>
<delete dir="${webapp}"/>
</target>
</project>