脚本自动化 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 ...
随机推荐
- [Python]查看python路径以及安装包的路径
特别是linux系统,装了多个python,有时候找不到python的绝对路径,有时候装了个django,又找不到django安装到哪里了..当然查看的方法有很多种,这里列出几种,供没有经验的人参考下 ...
- 指令汇B新闻客户端开发(五) ShareSdk的使用
ShareSdk是一个分享按钮的开源框架,我们首先可以去mob的官网下载这个控件.mob官网,然后找到sdk下载那一栏, 下载下来之后点击这个.jar文件就会有一个弹窗,填写自己的应用包名和要哪些分享 ...
- UNIX网络编程——epoll 系列函数简介、与select、poll 的区别
前面博客<<UNIX环境高级编程--epoll函数使用详解>>有关于epoll函数的讲解. 一.epoll 系列函数简介 #include <sys/epoll.h> ...
- mac OS X 从无法同步互联网时间想到的
最近在mac OS X 巨浪 :)上执行 ntpdate time.nist.gov 失败,提示 13 Jan 19:41:53 ntpdate[1374]: the NTP socket is in ...
- Servlet处理流程分析-Servlet学习之旅(二)
tomcat的处理处理客户端流程分析 tomcat即是servlet容器也具有web服务器的功能,即也具有html页面的功能. 1.首先客户端会将html请求发给tomcat内置的web服务器 2.w ...
- android获取设备唯一标示
概述 有时需要对用户设备进行标识,所以希望能够得到一个稳定可靠并且唯一的识别码.虽然Android系统中提供了这样设备识别码,但是由于Android系统版本.厂商定制系统中的Bug等限制,稳定性和唯一 ...
- ubuntu常用文件搜索命令
1.find find [搜索路径] [搜索关键字] 比如查找/test中文件名为t5.tmp的文件: 查找根目录下大于100M的文件 注意,这里的204800单位是块,1块=512字节 在根目录下查 ...
- scala学习笔记4(apply方法)
class ApplyTest{ def apply() = "This apply is in class" def test{ println("test" ...
- 关于新版本,iOS10的相关内容,兼容iOS 10 资料整理笔记
1.Notification(通知) 自从Notification被引入之后,苹果就不断的更新优化,但这些更新优化只是小打小闹,直至现在iOS 10开始真正的进行大改重构,这让开发者也体会到UserN ...
- 学习笔记-JS公开课一
JS公开课笔记 没特别说明就是和Java语言一样. JS变量:弱类型语言 1.在JS中,true表示1,false表示0.和Java不一样. 2. var y: 提示undefined: 3.如果al ...