用ant,shell下也可以用make。

1,ant 是一个自动化编译工具,安装使用。

2,编写build.xml,核心,写明进行哪些操作,删,建,编译,javac,java等,从例子可以看出每个操作都有固定格式,各种语言都有自己的包,下载安装,即可调用对应的api(按格式添加对应参数,执行即可)。各个函数具体内容需要查询使用。

举例如下:

<project name="BE" default="jar" basedir=".">

<property file="build.properties" />#参数文件

<!-- Global properties for this build -->

        <property name="jar.name" value="BE" />

        <property name="version" value="SNAPSHOT" />

        <property name="package.name" value="${jar.name}-${version}" />

        <property name="java.debug" value="true" />

<!-- Directories -->

        < ="build.dir" location="build" />

        <property name="build.cache.dir" location="${build.dir}/cache" />

        <property name="javadoc.dir" location="javadoc" />

        <property name="classes.dir" location="${build.dir}/classes" />

        <property name="dist.dir" location="dist" />

        <property name="dist.java.dir" location="${dist.jar}/java" />

<property name="jar.file" location="${build.dir}/${jar.name}.jar" />

        <property name="lib.dir" location="${basedir}/lib" />

        <property name="genjar.file" location="${build.dir}/${genjar.name}.jar" />

<property name="src.dir" location="src" />

        <property name="src.java.dir" location="${src.dir}/java" />

<target name="init">#建

                <tstamp />

                <!-- Create the build directory structure used by compile -->

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

                <mkdir dir="${classes.dir}" />

        </target>

<macrodef name="compile-source">#javac

                <sequential>

                        <!-- Compile the java code from ${src.java} into ${build} -->

                        <javac srcdir="${src.dir}" destdir="${classes.dir}" debug="${java.debug}" debuglevel="lines,vars,source">

                                <classpath>

                                        <fileset dir="./lib">

                                                <include name="**/*.jar" />

                                        </fileset>

                                </classpath>

                        </javac>

                </sequential>

        </macrodef>

<target name="jar" depends="compile">#jar命令

                <delete file="${jar.file}" />

<jar jarfile="${jar.file}">

                        <fileset dir="${classes.dir}" />

                        <fileset dir=".">

                                <include name="lib/*.jar" />

                        </fileset>

                </jar>

        </target>

<target name="jar-all" depends="jar">

        </target>

<target name="compile" depends="init" description="compile the source">

                <compile-source />

        </target>

<target name="clean" description="clean up">

                <!-- Delete the ${build} and ${dist} directory trees -->

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

                <delete dir="${classes.dir}" />

                <delete dir="${dist.dir}" />

        </target>

</project>

property 指定变量,如路径名,可以直接使用

target 就一个具体的操作,具有独立性,可以依赖另一个depends。具体命令的格式基本一致,主要是参数需要查询后指定。

整体上构成一个project。

运行命令:ant ,后面指定参数如 ant clean ,指定执行target clean 。没有会执行开头default指定的 target:jar。

运行后,ant自动寻找当前目录的build.xml文件。根据其内容,执行相关操作,删除,编译,执行,产生目录,生成文件,完成部署

脚本自动化 ant的更多相关文章

  1. fdisk分区硬盘并shell脚本自动化

    最近工作需要用到对硬盘进行shell脚本自动化分区和mount的操作,google了一些资料,下面做个总结. 如果硬盘没有进行分区(逻辑分区或者扩展分区,关于两者概念,自行google),我们将无法将 ...

  2. 性能测试培训:批量执行Jmeter脚本之ant调用

    性能测试培训:批量执行Jmeter脚本之ant调用   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.在poptest的load ...

  3. Modelsim调用用do脚本自动化仿真

    前言 EDA发展的趋势是自动化,使用脚本自动化仿真可以减少不必要的时间浪费. 流程 在windows下新建批处理脚本bat文件(linux下可用shell脚本或者其他,注意给脚本运行权限即可:chmo ...

  4. shell脚本自动化部署服务

    shell脚本自动化部署 !/bin/bash #export PATH=$PATH:/export/maven/bin run_flag_dir="/data0/shell/deploy_ ...

  5. MySQL数据库主从切换脚本自动化

    MySQL数据库主从切换脚本自动化 本文转载自:https://blog.csdn.net/weixin_36135773/article/details/79514507 在一些实际环境中,如何实现 ...

  6. shell脚本自动化部署

    由于公司技术部团队较小,没有专门的运维团队,所以运维工作技术部承包了. 一.纯人工部署是这样的: 1. 本地打包:一般 maven clean package 2. 借助xftp上传到服务器对应目录 ...

  7. Oracle 12c 静默安装(脚本自动化)

    oracle 12C 自动化静默安装脚本 项目地址: github: https://github.com/spdir/oracle-single-install 下载安装脚本 wget https: ...

  8. Jmeter 批量执行脚本之-----------Ant

    一.环境介绍&准备: 1)jmeter3.2版本,需配备jdk1.8(或其他jmeter版本): 2)ant下载,并配置环境变量: a.下载地址:http://ant.apache.org/b ...

  9. Jenkins 对项目持续集成的配置之二 API接口自动化 Ant+Jmeter

    先介绍一下Ant+Jmeter 略 我的另一篇文章有讲在linux上部署ant + jmeter以满足CI持续化集成 https://www.cnblogs.com/qianjinyan/p/9067 ...

随机推荐

  1. Java安全管理器——SecurityManager

    总的来说,Java安全应该包括两方面的内容,一是Java平台(即是Java运行环境)的安全性:二是Java语言开发的应用程序的安全性.由于我们不是Java本身语言的制定开发者,所以第一个安全性不需要我 ...

  2. 视频特性TI(时间信息)和SI(空间信息)的计算工具:TIandSI-压缩码流版

    ===================================================== TI(时间信息)和SI(空间信息)计算工具文章列表: 视频特性TI(时间信息)和SI(空间信 ...

  3. java之异常处理

    异常Exception我们分为 |--RuntimeException运行期异常,我们需要修正代码 |--非RuntimeException 编译期异常,必须处理的,否则程序编译不通过 异常有两种处理 ...

  4. MTK8127源码编译出现的错误及相关解决办法

    /** * date:2016/8/17 * author: Y.X .YANG */ 按照开发文档提示: 1.MTK提供的开发包目录下有若干个.aa .ab .ac ...的分压缩包.此时应当将这些 ...

  5. linu下C语言之BMP图片操作编程(下)

    前面提高了一个将BMP左转的程序,右转其实也是类似的操作,就不写了,这节,我们来实现,将一张BMP图进行灰度处理,代码贴上: #include <stdio.h> #include < ...

  6. android最新更新方法

    使用SDK Manager更新时出现问题Failed to fetch URL https://dl-ssl.google.com/android/repository/repository-6.xm ...

  7. UNIX网络编程——TCP—经受时延与nagle算法、滑动窗口、拥塞窗口

    1.经受时延: TCP在接收到数据时并不立即发送ACK,相反,它推迟发送,以便将ACK与需要沿该方向发送的数据一起发送,时延为200ms,超过时延范围,发送确认. 2.nagle算法: 一个TCP连接 ...

  8. 卸载linux后出现grub rescue怎么办?

    原文转自:http://zhidao.baidu.com/link?url=9e2mOttgV0IJDMml58SFbV-7XOvVzp2jR5l1n3ltFOzX1XAcp5-t-QQPc-Nozy ...

  9. 1060. Are They Equal (25)

    题目如下: If a machine can save only 3 significant digits, the float numbers 12300 and 12358.9 are consi ...

  10. [GitHub]第八讲:GitHub Pages

    Github Pages 是 github 公司提供的免费的静态网站托管服务,用起来方便而且功能强大,不仅没有空间限制,还可以绑定自己的域名.在 https://pages.github.com/ 首 ...