ant打包成war包,通过jenkins自动ant构建到tomcat

 

首先是 build.xml文件,这个是关键。在你的项目下

 

下面的一些地方你需要自己修改,比如project name,tomcat.home,以及一些xml文件的路径。一下build.xml参考的是http://blog.csdn.net/miraclestar/article/details/6002573,生成的war包会放到项目的根目录下的build文件夹下。不懂的q我。

<?xml version="1.0" encoding="UTF-8"?>

       

<project name="kanban" default="generwar" basedir=".">

       

    <property name="build" value="${basedir}/build" />

       

    <property name="build.class" value="${build}/classes" />

       

    <property name="src" value="${basedir}/src" />

       

    <property name="webRoot" value="${basedir}/WebContent" />

       

    <property name="lib" value="${webRoot}/WEB-INF/lib" />

       

    <property name="tomcat.home" value="D:\tomcat\apache-tomcat-7.0.41" />

       

    <!--定义CLASSPACH,编译时用到你外部加入的包-->

       

    <path id="classpath">

       

        <pathelement location="${src}" />

       

        <fileset dir="${lib}" includes="***.jar" />

        <fileset dir="${tomcat.home}/lib" includes="***.jar" />

       

    </path>

       

       

    <!--请将下面的路径改为你本地的路径-->

       

    <property name="webserver" value="${tomcat.home}/webapps" />

       

       

    <!--删除任务-->

       

    <target name="clean" description="删除">

       

        <echo message="删除目录" />

       

        <delete dir="${build}" />

       

    </target>

       

       

    <!--创建一个临时目录-->

       

    <target name="init" description="创建目录" depends="clean">

       

        <echo message="创建目录--以执行" />

       

        <mkdir dir="${build.class}" />

       

    </target>

       

       

    <!--编译java源文件-->

       

    <target name="compile" description="编译文件" depends="init">

       

        <echo message="编译文件" />

       

        <javac srcdir="${src}" destdir="${build.class}" compiler="javac1.6" source="1.6" target="1.6" debug="on">

            <classpath refid="classpath" />

            <compilerarg line="-encoding UTF-8 " />

        </javac>

       

    </target>

       

       

    <!--打成WAR包-->

       

    <target name="generwar" depends="compile">

       

        <echo message="打成WAR" />

       

        <copyfile dest="${webRoot}/WEB-INF/classes/spring.xml" src="${src}/spring.xml" />

        <copyfile dest="${webRoot}/WEB-INF/classes/kanban.xml" src="${src}/kanban.xml" />

        <copyfile dest="${webRoot}/WEB-INF/classes/rsclient.xml" src="${src}/rsclient.xml" />

       

        <!--

        <copydir src="${src}" dest="${webRoot}/WEB-INF/classes" includes="*.xml" excludes="*.java"/>

        -->

       

        <war destfile="${build}/${ant.project.name}.war" webxml="${webRoot}/WEB-INF/web.xml">

       

            <fileset dir="webContent">

            </fileset>

       

            <lib dir="${lib}" />

       

            <classes dir="${build.class}" />

       

        </war>

       

    </target>

       

       

    <!--把打好的WAR删除-->

       

    <target name="deleteWar" depends="fabu" description="删除服务器上的war">

        <delete dir="${build}" />

    </target>

       

    <!--把WAR放到一个指定目录,这里是直接布署到TOMCAT服务器-->

       

    <target name="fabu" depends="generwar" description="发布">

       

        <copy file="${build}/${ant.project.name}.war" todir="${webserver}">

       

        </copy>

       

    </target>

       

       

       

</project>

然后去网上下载最新版的ant (我用到的是1.9版本 2013年6月14日18:51:18)放到你的jenkins服务器里面。

之后开始构建,然后坐等tomcat7的app现身吧!!

 

落雨

394263788

2013年6月14日18:52:16

你可能感兴趣的:(Jenkins)