自动打包部署build.xml

自动打包部署

<?xml version="1.0" encoding="UTF-8"?>
<project name="demo" default="deleteWar" basedir=".">
    <property name="build" value="${basedir}/build"/>
    <property name="build.class" value="${build}/classes"/>
    <property name="src" value="${basedir}/src"/>
    <property name="web" value="${basedir}/web"/>
    <property name="lib" value="${web}/WEB-INF/lib"/>

    <!--TOMCAT路径-->
    <property name="webserver" value="E:\apache-tomcat-8.5.37"/>

    <!--定义CLASSPACH,编译时用到外部的包-->
    <path id="classpath">
        <pathelement location="${src}"/>
        <fileset dir="${lib}" includes="***.jar"/>
    </path>

    <!--删除任务-->
    <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}">
            <classpath refid="classpath"/>
            <compilerarg line="-encoding GBK "/>
        </javac>
    </target>

    <!--打成WAR包-->
    <target name="generwar" depends="compile">
        <echo message="打成WAR"/>
        <war destfile="${build}/${ant.project.name}.war" webxml="${web}/WEB-INF/web.xml">
            <fileset dir="web"/>
            <lib dir="${lib}"/>
            <classes dir="${build.class}"/>
        </war>
    </target>


    <!--把WAR放到一个指定目录,这里是直接布署到TOMCAT服务器-->
    <target name="fabu" depends="generwar" description="发布">
        <copy file="${build}/${ant.project.name}.war" todir="${webserver}/webapps"/>
    </target>


    <!--把打好的WAR删除-->
    <target name="deleteWar" depends="fabu" description="删除服务器上的war">
        <delete dir="${build}"/>
    </target>

    <!--停止tomcat-->
    <target name="stop_tomcat">
        <echo>停止tomcat</echo>
        <exec executable="cmd" dir="${webserver}/bin" failonerror="false" append="true">
            <env key="CATALINA_HOME" path="${webserver}"/>
            <arg value="/c shutdown.bat"/>
        </exec>
    </target>

    <!--启动tomcat-->
    <!--这里做的主要是部署本地Tomcat服务器的过程,差不多的思路是先把war发布到webapps目录下,接着再重启服务器-->
    <target name="start_tomcat" depends="fabu,stop_tomcat">
        <echo>启动tomcat</echo>
        <exec executable="cmd" dir="${webserver}/bin" failonerror="false" append="true">
            <env key="CATALINA_HOME" path="${webserver}"/>
            <arg value="/c startup.bat"/>
        </exec>
    </target>

    <!--部署到远程服务器-->
    <!--这里模拟了一个利用ant部署到远程服务器的过程,server是ftp服务器IP地址,userid和password是ftp服务器的账号
     和密码,remotedir是你在建立服务器时,为服务器建立的目录,我建立的是D:\apache-tomcat-8.0.43\webapps,fileset
     是你要上传的文件,要利用ftp上传需要导入两个jar包,commons-net-1.4.0.jar、jakarta-oro-2.0.8.jar
     -->
    <target name="deploy" depends="generwar">
        <ftp server="127.0.0.1"
             userid="admin" password="123456" remotedir="/">
            <fileset dir="${build}">
                <include name="*.war"/>
            </fileset>
        </ftp>
    </target>
</project>

 

转载于:https://www.cnblogs.com/wangchl/p/10282439.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值