|
|
@@ -3,9 +3,10 @@
|
|
|
<project name="ieat2" basedir="." default="war" xmlns:ivy="antlib:org.apache.ivy.ant">
|
|
|
<property name="app.name" value="ieat"/>
|
|
|
|
|
|
+ <property name="conf.dir" value="conf/"/>
|
|
|
<property name="lib.dir" value="lib/"/>
|
|
|
<property name="web.dir" value="web/"/>
|
|
|
-
|
|
|
+
|
|
|
<property name="build.version" value="2.0.0"/>
|
|
|
<property name="build.java.version" value="1.8"/>
|
|
|
<property name="build.dir" value="build/"/>
|
|
|
@@ -30,8 +31,8 @@
|
|
|
|
|
|
<property name="ant.lib" value="${user.home}/.ant/lib"/>
|
|
|
|
|
|
- <property name="ivy.signal" value="${ant.lib}/ivy.jar"/>
|
|
|
- <available property="ivy.installed" file="${ivy.signal}"/>
|
|
|
+ <property name="ivy.jar" value="${ant.lib}/ivy.jar"/>
|
|
|
+ <available property="ivy.installed" file="${ivy.jar}"/>
|
|
|
|
|
|
<tstamp>
|
|
|
<format property="build.time" pattern="MM/dd/yyyy hh:mm aa z" />
|
|
|
@@ -44,19 +45,38 @@
|
|
|
|
|
|
<target name="ivy.install" unless="ivy.installed">
|
|
|
<mkdir dir="${ant.lib}"/>
|
|
|
- <get dest="${ant.lib}/ivy.jar"
|
|
|
+ <get dest="${ivy.jar}"
|
|
|
src="http://search.maven.org/remotecontent?filepath=org/apache/ivy/ivy/2.3.0/ivy-2.3.0.jar"/>
|
|
|
+ <taskdef resource="org/apache/ivy/ant/antlib.xml"
|
|
|
+ uri="antlib:org.apache.ivy.ant"/>
|
|
|
+ <property name="ivy.installed" value="true"/>
|
|
|
</target>
|
|
|
|
|
|
<target name="ivy.tree" depends="ivy.install" description="Show the dependency tree.">
|
|
|
<ivy:dependencytree />
|
|
|
</target>
|
|
|
|
|
|
- <target name="ivy.resolve" depends="ivy.install" description="Use ivy to resolve dependencies">
|
|
|
- <ivy:retrieve pattern="${lib.dir}/[conf]/[artifact].[ext]"/>
|
|
|
+ <target name="ivy.resolve.compile" depends="ivy.install">
|
|
|
+ <ivy:retrieve pattern="${lib.dir}/[conf]/[artifact].[ext]" conf="compile"/>
|
|
|
+ </target>
|
|
|
+
|
|
|
+ <target name="ivy.resolve.war" depends="ivy.install">
|
|
|
+ <ivy:retrieve pattern="${lib.dir}/[conf]/[artifact].[ext]" conf="war"/>
|
|
|
</target>
|
|
|
|
|
|
- <target name="compile" depends="ivy.resolve" description="Compile source files">
|
|
|
+ <target name="ivy.resolve.deploy" depends="ivy.install">
|
|
|
+ <ivy:retrieve pattern="${ant.lib}/[artifact].[ext]" conf="deploy"/>
|
|
|
+ <taskdef resource="org/apache/catalina/ant/antlib.xml"
|
|
|
+ uri="antlib:org.apache.catalina.ant"/>
|
|
|
+ <taskdef name="deploy" classname="org.apache.catalina.ant.DeployTask" />
|
|
|
+ <taskdef name="undeploy" classname="org.apache.catalina.ant.UndeployTask" />
|
|
|
+ </target>
|
|
|
+
|
|
|
+ <target name="ivy.resolve"
|
|
|
+ depends="ivy.resolve.compile,ivy.resolve.war,ivy.resolve.deploy"
|
|
|
+ description="Use ivy to resolve compilation dependencies"/>
|
|
|
+
|
|
|
+ <target name="compile" depends="ivy.resolve.compile" description="Compile source files">
|
|
|
<mkdir dir="${target.dir}"/>
|
|
|
<javac srcdir="${source.dir}"
|
|
|
verbose="${compile.verbose}"
|
|
|
@@ -73,9 +93,9 @@
|
|
|
</javac>
|
|
|
</target>
|
|
|
|
|
|
- <target name="war" depends="compile" description="Create application WAR">
|
|
|
+ <target name="war" depends="compile,ivy.resolve.war" description="Create application WAR">
|
|
|
<mkdir dir="${build.dir}"/>
|
|
|
- <war warfile="${build.warfile}" webxml="web.xml">
|
|
|
+ <war warfile="${build.warfile}" webxml="${conf.dir}/web.xml">
|
|
|
<lib dir="${build.lib}"/>
|
|
|
<fileset dir="web"/>
|
|
|
<classes dir="${target.dir}"/>
|
|
|
@@ -87,8 +107,19 @@
|
|
|
</target>
|
|
|
|
|
|
<target name="clean.full" depends="clean" description="Delete build files and dependencies">
|
|
|
- <delete dir="${ivy.signal}"/>
|
|
|
+ <delete dir="${ivy.jar}"/>
|
|
|
<delete dir="${lib.dir}"/>
|
|
|
<ivy:cleancache/>
|
|
|
</target>
|
|
|
+
|
|
|
+ <property file="${conf.dir}/tomcat.properties"/>
|
|
|
+
|
|
|
+ <target name="deploy" depends="war,ivy.resolve.deploy" description="Deploy to tomcat">
|
|
|
+ <deploy url="http://localhost:8080/manager/text"
|
|
|
+ username="${tomcat.username}"
|
|
|
+ password="${tomcat.password}"
|
|
|
+ update="true"
|
|
|
+ path="/ieat-${build.version}"
|
|
|
+ war="file:./${build.warfile}" />
|
|
|
+ </target>
|
|
|
</project>
|