• 用ant发布项目版本


    build.properties

    #final builded name
    #build.name-build.version.war
    #e.t test-1.0.0.1.war

    #saved path
    build.dest=D:/MyProjects

    #project version
    build.version=1.0.0.1

    #Project name
    build.name=test

    #builder
    build.created-by=Cool Team

    #vendor
    build.vendor=Tatch Technologies Co. Ltd.

    build.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <project name="test" default="distribution">
    <!-- 定义properties -->
    <property file="build.properties" />
    <property name="src.dir" value="src" />
    <property name="test.dir" value="test" />
    <property name="classes.dir" value="classes" />
    <property name="webroot.dir" value="WebRoot" />
    <!-- 创建工程临时build路径 -->
    <property name="build.dir" value="build"/>
    <!-- 最终发布名称 -->
    <property name="final.name" value="${build.name}-${build.version}"/>

    <!-- 定义classPath -->
    <path id="compile.classpath">
    <pathelement location="${classes.dir}"/>
    <pathelement location="${classes.dir}/src"/>
    <fileset dir="${webroot.dir}/WEB-INF/lib">
    <include name="*.jar"/>
    <include name="*.zip"/>
    </fileset>
    </path>

    <!-- 清除不需要的文件 -->
    <target name="clean">
    <echo message="Running clean..."/>
    <echo message="Deleting files..."/>
    <!-- 清除classes目录 -->
    <delete dir="${classes.dir}"/>
    <delete dir="${build.dir}"/>
    <delete dir="${webroot.dir}/WEB-INF/classes"/>
    </target>

    <!-- 初始化准备工作 -->
    <target name="init" depends="clean">
    <echo message="Running init..."/>
    <!-- 创建存放构建的目录 -->
    <mkdir dir="${build.dest}"/>
    <mkdir dir="${build.dest}/${final.name}"/>
    <mkdir dir="${classes.dir}/src"/>
    <mkdir dir="${classes.dir}/test"/>
    <!-- 创建工程临时build需要的路径 -->
    <mkdir dir="${build.dir}"/>
    <mkdir dir="${build.dir}/WEB-INF"/>
    <mkdir dir="${build.dir}/WEB-INF/classes"/>
    <mkdir dir="${build.dir}/WEB-INF/lib"/>
    </target>

    <!-- 编译 -->
    <target name="compile" depends="init">
    <echo message="compile the source file..." />
    <javac srcdir="${src.dir}" destdir="${classes.dir}/src" debug="true" encoding="utf-8">
    <classpath refid="compile.classpath"/>
    </javac>
    <javac srcdir="${test.dir}" destdir="${classes.dir}/test" debug="true" encoding="utf-8">
    <classpath refid="compile.classpath"/>
    </javac>
    <!-- 将配置文件复制过去 -->
    <echo message="copy the file..."/>
    <copy todir="${classes.dir}/src">
    <fileset dir="${src.dir}">
    <include name="*.*"/>
    <include name="**/*.xml"/>
    </fileset>
    </copy>
    <!-- 将测试代码配置文件复制过去 -->
    <copy todir="${classes.dir}/test">
    <fileset dir="${test.dir}">
    <include name="*.*"/>
    </fileset>
    </copy>
    </target>

    <!-- 复制文件 -->
    <target name="copy" depends="compile">
    <!-- 将编译好的class和其它所有文件复制到临时构建目录 -->
    <echo message="copy the file..."/>
    <copy todir="${build.dir}/WEB-INF/classes">
    <fileset dir="${classes.dir}/src">
    <include name="**/*.*"/>
    </fileset>
    </copy>
    <copy todir="${build.dir}">
    <fileset dir="${webroot.dir}"/>
    </copy>
    </target>

    <!-- 打包成war包发布工程 -->
    <target name="distribution" depends="copy">
    <jar jarfile="${build.dest}/${final.name}/${build.name}.war">
    <fileset dir="${build.dir}"/>
    <exclude name="**/*test.*"/>
    <exclude name="**/test*.*"/>
    <manifest>
    <attribute name="Specification-Title" value="${build.name}"/>
    <attribute name="Created-By" value="${build.created-by}"/>
    <attribute name="Specification-Version" value="${build.name}"/>
    <attribute name="Specification-Vendor" value="${build.vendor}"/>
    </manifest>
    </jar>
    <echo message="Deleting package of before files..."/>
    <!-- 清除classes目录 -->
    <delete dir="${build.dir}"/>
    </target>
    </project>




  • 相关阅读:
    VML编程之shape多边型.shapetype模版.shape与curve曲线《VML极道教程》原著:沐缘华
    VML编程之image图片《VML极道教程》原著:沐缘华
    软件开发项目的风险管理 (转)
    VML编程之polyline多边型《VML极道教程》原著:沐缘华
    VML编程之标记实战与line线《VML极道教程》原著:沐缘
    xml操作类,封装了常用的对XML文件的操作功能....
    Bugzilla 安装手册
    IT项目管理之<<少林练步拳>>(转)
    Atlas学习手记(8):调用本地Web Service简单介绍(转摘)
    WF从设计器出发,到对从设计器出来的工作流的调用加载,已经完成了整个工作流的详细设计,目前工作流设计器已经完成!
  • 原文地址:https://www.cnblogs.com/zfc2201/p/2308039.html
Copyright © 2020-2023  润新知