脚本自动化 ant
用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的更多相关文章
- fdisk分区硬盘并shell脚本自动化
最近工作需要用到对硬盘进行shell脚本自动化分区和mount的操作,google了一些资料,下面做个总结. 如果硬盘没有进行分区(逻辑分区或者扩展分区,关于两者概念,自行google),我们将无法将 ...
- 性能测试培训:批量执行Jmeter脚本之ant调用
性能测试培训:批量执行Jmeter脚本之ant调用 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.在poptest的load ...
- Modelsim调用用do脚本自动化仿真
前言 EDA发展的趋势是自动化,使用脚本自动化仿真可以减少不必要的时间浪费. 流程 在windows下新建批处理脚本bat文件(linux下可用shell脚本或者其他,注意给脚本运行权限即可:chmo ...
- shell脚本自动化部署服务
shell脚本自动化部署 !/bin/bash #export PATH=$PATH:/export/maven/bin run_flag_dir="/data0/shell/deploy_ ...
- MySQL数据库主从切换脚本自动化
MySQL数据库主从切换脚本自动化 本文转载自:https://blog.csdn.net/weixin_36135773/article/details/79514507 在一些实际环境中,如何实现 ...
- shell脚本自动化部署
由于公司技术部团队较小,没有专门的运维团队,所以运维工作技术部承包了. 一.纯人工部署是这样的: 1. 本地打包:一般 maven clean package 2. 借助xftp上传到服务器对应目录 ...
- Oracle 12c 静默安装(脚本自动化)
oracle 12C 自动化静默安装脚本 项目地址: github: https://github.com/spdir/oracle-single-install 下载安装脚本 wget https: ...
- Jmeter 批量执行脚本之-----------Ant
一.环境介绍&准备: 1)jmeter3.2版本,需配备jdk1.8(或其他jmeter版本): 2)ant下载,并配置环境变量: a.下载地址:http://ant.apache.org/b ...
- Jenkins 对项目持续集成的配置之二 API接口自动化 Ant+Jmeter
先介绍一下Ant+Jmeter 略 我的另一篇文章有讲在linux上部署ant + jmeter以满足CI持续化集成 https://www.cnblogs.com/qianjinyan/p/9067 ...
随机推荐
- EBS业务学习之应收管理
Oracle Receivable 是功能完备地应收款管理系统,它能够有效地管理客户.发票和收帐过程,因此是财务模块的重要组成部分,是财务系统中较为核心的模块之一.对于一个公司来说,是否能够与客户保持 ...
- [django1.6]跑批任务错误(2006, 'MySQL server has gone away')
有个django的定时任务的需求,调用django的orm来对数据库进行数据处理. 在交互环境下直接启动pyhton脚本没有问题,放在定时任务中时候,总是出现 (2006, 'MySQL serve ...
- Request和Response的格式
Request和Response的格式 Request格式: HTTP请求行 (请求)头 空行 可选的消息体 注:请求行和标题必须以<CR><LF> 作为结尾(也就是,回 ...
- not in 前面/后面存在null值时的处理
表声明 order_header表中有ship_method列: ship_method_map表中ship_method为主键列. 需求 找出order_header表中所有ship_method不 ...
- 15 ActionProvider代码例子
Menu文件夹下代码: <menu xmlns:android="http://schemas.android.com/apk/res/android" > <! ...
- UNIX网络编程——解决TCP网络传输“粘包”问题
当前在网络传输应用中,广泛采用的是TCP/IP通信协议及其标准的socket应用开发编程接口(API).TCP/IP传输层有两个并列的协议:TCP和UDP.其中TCP(transport contro ...
- Android反编译 -- 错误代码还原
PS:如果阅读体验不好,可以尝试Github版 (<-点左边) 1. setColor(-16777216) 反编译的代码中会有很多setColor(int)的情况,比如setColor(-16 ...
- 财务模块多组织,GL, SLA, SOB, COA, BSV, CCID, LE 概念的简单介绍
GL= General Ledger 指的是Oracle 的总帐系统. application_id = 101. 在uk似乎居然还有不同的解释(In the UK, it was refer ...
- 怎样在Ubuntu 14.04中搭建gitolite git服务器
1. 首先这里我们安装openssh-serveropenssh-client,如果你用的是VPS之类的一般都默认安装好了,不过运行一个这个命令不会有错的,如果有安装就会提示已安装. sud ...
- Socket实现聊天客户端
今天在极客学院上看到了一个关于Socket的视频讲解,感觉还不错,就写了份代码,拿来分享一下. Socket使用方法 关于Socket的使用,我们首先要弄清楚的是,在服务器端还是在客户端使用.因为这的 ...