zoukankan      html  css  js  c++  java
  • ant脚本编写

    使用ant脚本前的准备

    1、下载一个ant安装包。如:apache-ant-1.8.4-bin.zip。解压到E盘。

    2、配置环境变量。新增ANT_HOME:E:apache-ant-1.8.4;PATH增加:E:apache-ant-1.8.4in。

    3、检查ant是否配置完成。运行->cmd输入:ant -version。查看是否打印ant的版本号。

    打包的实质

    生成jar包的实质

    1、编译工程src文件夹下的Java文件,生成相应的class文件。

    2、将所有的class文件集合成jar包。

    生成war包的实质

    1、编译工程src文件夹下的java文件,生成相应的class文件。

    2、将工程WebContent下的除了class文件和jar包以外的文件,全部拷贝到war包的对应目录下。

    3、将编译生成的class文件,全部拷贝到war包WEB-INF/classes文件夹下。

    4、将工程lib中的jar包,全部拷贝到war包的WEB-INF/lib下。最后压缩成war包。

    一个生成war包的ant脚本代码

    <?xml version="1.0" encoding="UTF-8"?>
    
    <!-- 定义一个工程,默认任务为warFile。 -->
    <project name="Visit" default="warFile" basedir=".">
        
        <!-- 定义属性,打成war包的名称。 -->
        <property name="warFileName" value="VisitFiles.war"></property>
        
        <!-- 定义路径,编译java文件时用到的jar包。 -->
        <path id="project.lib">
            <fileset dir="${basedir}/WebContent/WEB-INF/lib">
                <include name="**/*.jar"/>
            </fileset>
        </path>
        
        <!-- 定义任务,清空任务:清空原有的class文件,创建新的build路径。 -->
        <target name="clean">
            <delete dir="${basedir}/build" />
            <mkdir dir="${basedir}/build" />
        </target>
        
        <!-- 定义任务,编译src文件夹中的java文件,编译后的class文件放到创建的文件夹下。 -->
        <target name="compile" depends="clean">
            <javac srcdir="${basedir}/src" destdir="${basedir}/build" includeantruntime="false">
                <classpath refid="project.lib">
                </classpath>
            </javac>
        </target>
        
        <!-- 定义默认任务,将class文件集合成jar包。 -->
        <target name="warFile" depends="compile">
            <!-- 删除原有war包。 -->
            <delete dir="${basedir}/${warFileName}" />
            <!-- 建立新war包。 -->
            <war destfile="${basedir}/${warFileName}" webxml="${basedir}/WebContent/WEB-INF/web.xml">
                <!-- 将非jar和非class文件拷贝到war包的对应路径下。 -->
                <fileset dir="${basedir}/WebContent">
                    <include name="**/**.*" />
                    <exclude name="**/*.jar"/>
                    <exclude name="**/*.class"/>
                </fileset>
                <!-- 将jar和class文件拷贝到war包的对应路径下。 -->
                <lib dir="${basedir}/WebContent/WEB-INF/lib" />
                <classes dir="${basedir}/build" />
            </war>
        </target>
        
    </project>

     另一个例子:

    <?xml version="1.0" encoding="UTF-8"?>
    <project name="gsApi" basedir="." default="afterClean">
        <description>gsApi</description>
        <tstamp prefix="start">
            <format property="timestamp" pattern="yyyy_MM_dd" />
            <format property="vsstimestamp" pattern="yyyy_MM_dd_hh_mm" />
        </tstamp>
        <property name="projectName" value="gsApi"></property>
        <property name="src" value="../" />
        <property name="debugging" value="on" />
        <property name="classes" value="WEB-INF/classes">
        </property>
        <property name="lib" value="WEB-INF/lib"></property>
        <property name="config" value="../resources" />
    
        
        <property name="srcDir" value="./webapp"></property>
        
    
        <target name="init">
            <tstamp>
                <format property="build.time" pattern="yyyy-MM-dd HH:mm:ss aa" />
            </tstamp>
            <echo message="build time : ${build.time}" />
        </target>
    
        <target name="clean" depends="init">
            <delete dir="${classes}" />
        </target>
    
        <target name="prepare" depends="clean">
            <mkdir dir="${classes}" />
            <copy todir="${classes}">
                 <fileset dir="${config}">
                     <include name="**/*.*" />
                 </fileset>
             </copy>
        </target>
        
    
        <target name="compile" depends="prepare">
            <javac srcdir="${src}" destdir="${classes}" debug="true" includeantruntime="false" debuglevel="lines,vars,source" encoding="UTF-8" fork="true" memoryMaximumSize="512m">
                <classpath>
                    <fileset dir="${lib}">
                        <include name="**/*.jar" />
                    </fileset>
                </classpath>
                <compilerarg line="-XDignore.symbol.file"/>
            </javac>
        </target>
        
        
        <target name="mkwar" depends="compile">
            <war destfile="../../../target/${projectName}.war" webxml="${basedir}/WEB-INF/web.xml">
                <fileset dir="${basedir}/">
                    <include name="**/*.*" />
                </fileset>
            </war>
        </target>
        
        
        <target name="afterClean" depends="mkwar">
        </target>
        
    </project>
  • 相关阅读:
    LeetCode 227. Basic Calculator II
    LeetCode 224. Basic Calculator
    LeetCode 103. Binary Tree Zigzag Level Order Traversal
    LeetCode 102. Binary Tree Level Order Traversal
    LeetCode 106. Construct Binary Tree from Inorder and Postorder Traversal
    LeetCode 105. Construct Binary Tree from Preorder and Inorder Traversal
    LeetCode 169. Majority Element
    LeetCode 145. Binary Tree Postorder Traversal
    LeetCode 94. Binary Tree Inorder Traversal
    LeetCode 144. Binary Tree Preorder Traversal
  • 原文地址:https://www.cnblogs.com/shaohz2014/p/5872706.html
Copyright © 2011-2022 走看看