zoukankan      html  css  js  c++  java
  • Ant配置文件详解

    <!--
        使用于发布源码放在一个目录中,并使用第三发jar包,通过修改全局变量定义部分完成自定义
        该模板将把第三方jar文件解压然后打包到新的jar包中。
    -->
    <project name="SuperDataBaseTools" basedir="." default="main" >
    
        <description>可疑交易报送服务程序</description>
        
        <!-- 全局变量定义 -->
        <property name="src.dir"         value="src" /><!-- 源代码目录 -->
        <property name="build.dir"         value="build" /><!-- 编译目标文件目录 -->
        <property name="lib.dir"         value="lib" /><!-- 第三方工具类文件 -->
        <property name="sqljdbc"         value="sqljdbc_auth.dll" /><!-- 资源文件 -->
        <property name="classes.dir"    value="${build.dir}/bin" /><!-- 编译生成Class文件目录 -->
        <property name="jar.dir"         value="${build.dir}" /><!-- 打包生成jar文件目录 -->
        <property name="main-class"     value="conn.ConnDataBase" /><!-- 程序入口对象 -->
        <property name="version"        value="1.0" /><!-- 指定程序的版本号,该值会添加到生成jar文件的后面。 -->
        <property name="encoding"         value="GBK" /><!-- 编译目标的编码 -->
    
        <target name="main" depends="clean, preapare, compile, uncompress, jar, resources, clearUp" description="控制编译执行流程">
            <echo>编译完成^_^</echo>
            <echo>目标jar文件:${jar.dir}/${ant.project.name}-${version}.jar</echo>
        </target>
    
        <target name="clean" description="删除旧的二进制代码">
            <echo>清除旧的二进制文件</echo>
            <delete dir="${build.dir}" />
        </target>
    
        <target name="preapare" depends="clean" description="准备文件目录">
            <echo>为之后操作创建文件目录</echo>
            <mkdir dir="${classes.dir}" description="存放字节码文件" />
            <mkdir dir="${jar.dir}" description="存放打包之后的jar文件" />
        </target>
    
        <target name="compile" depends="preapare" description="编译java文件为字节码class">
            <echo>编译</echo>
            <javac srcdir="${src.dir}" destdir="${classes.dir}">
                
                <compilerarg line="-encoding ${encoding}" />
                <classpath>
                    <fileset dir="${lib.dir}">
                        <include name="*.jar" />
                    </fileset>
                </classpath>
            </javac>
        </target>
        
        <target name="uncompress" depends="compile" description="将第三方jar解压到编译的文件,方便打包">
            <echo>将第三方jar解压到编译的文件</echo>
            <unjar dest="${classes.dir}">
                <fileset dir="${lib.dir}">
                    <include name="*.jar" />
                </fileset>
            </unjar>
        </target>
    
        <target name="jar" depends="compile, uncompress" description="将字节码文件打包成jar文件">
            <echo>打包jar文件</echo>
            <jar destfile="${jar.dir}/${ant.project.name}-${version}.jar" basedir="${classes.dir}">
                <manifest>
                    <attribute name="Main-Class" value="${main-class}" />
                    <attribute name="Class-Path" value="." />
                </manifest>
            </jar>
        </target>
        
        <target name="resources" depends="jar" description="配置运行需要的配置信息">
            <echo>配置运行环境</echo>
            <copy todir="${jar.dir}">
                <fileset file="${sqljdbc}">
                    <include name="sqljdbc_auth.dll"/>
                </fileset>
            </copy>
        </target>
    
        <target name="clearUp" description="清理生成的临时文件">
            <echo>清理构建中产生的临时文件</echo>
            <delete dir="${classes.dir}" />
        </target>
        
    </project>
  • 相关阅读:
    .net软件反编译笔记
    Asp.Net 网站一键部署技术(上)
    C# TreeGridView 实现进程列表
    HeidiSQL Navicat
    Flask项目中邮箱模块的应用
    如何在已有的Flask项目添加数据表结构?
    把u盘刻录成系统盘
    Object '<Tbl_next_week_change_state at 0x7f2c78d849e8>' is already attached to session '4' (this is '6')
    OSError: [Errno 98] Address already in use
    Linux下设置和查看环境变量
  • 原文地址:https://www.cnblogs.com/quyongjin/p/3124203.html
Copyright © 2011-2022 走看看