Ant快速入门(二)-----使用Ant工具
使用Ant非常简单,当正确安装Ant后,只要输入ant或ant.bat即可.
如果运行ant命令时没有指定任何参数,Ant会在当前目录下搜索build.xml文件。如果找到了就以该文件作为生成文件,并执行默认的target
如果运行时使用 -find或者-s 选项(这两个选项的作用完全相同),Ant就会到上级目录中搜索生成文件,直至到达文件系统的根路径。
要想让Ant使用其他生成文件,可以使用 -buildfile<生成文件>选项,其中-buildfile可以使用 -file或-f来代替,这三个选项的作用完全一样。例如使用如下命令:
ant -f a.xml
ant -file b.xml
如果希望Ant运行时只输出少量的必要信息,则可使用-quite或-q选项;如果希望Ant运行时输出更多的提示信息,则可使用-verbose或-v选项。
如果希望Ant运行时将提示信息输出到指定文件,而不是直接输出到控制台,则可使用-logfile <file>或 -l <file>选项。例如如下命令:
ant -verbose -l a.log //运行Ant输出更多的提示信息,并将提示信息输出到a.log文件中
除此之外,Ant还允许运行时指定一些属性来覆盖生成文件中指定的属性值(使用Property task来指定),例如使用 -D<property>=<value>,则此处指定的value将会覆盖生成文件中的property属性值。例如如下命令:
ant -Dbook=Spring2 //该命令将会覆盖生成文件中的book属性值
通过该方法可以将操作系统的环境变量值传入生成文件,例如我们在运行Ant工具时使用如下命令:
ant -Denv1=%ANT_HOME%
上面命令中粗体字代码用于向文件中传入一个env1属性,而该属性的值并没有直接给出,而是用%ANT_HOME%的形式给出--这是Windows下访问环境变量的形式。通过这种方式,就可以将Windows环境变量传入文件了,如果希望在生成文件中访问到环境变量的值,使用$env1即可。
上面的命令在Linux平台上则改为 :
ant -Denv1=$ANT_HOME
Linux下以$符访问环境变量。
在默认情况下,Ant将运行生成文件里指定的默认target,如果希望运行Ant时显示指定希望运行的target,则可采用如下命令格式:
ant [target [target2] [target3].......]
实际上,如果读者希望获取ant命令更多的详细情况,之际而是用 ant -help即可。
Ant快速入门(二)-----使用Ant工具的更多相关文章
- Ant快速入门(三)-----定义生成文件
适应Ant的关键就是编写生成文件,生成文件定义了该项目的各个生成任务(以target来表示,每个target表示一个生成任务),并定义生成任务之间的依赖关系. Ant生成文件的默认名为build.xm ...
- Ant快速入门(一)-----Ant介绍
Ant是一种基于Java的生成工具.从作用上来看,它类似于C编程(UNIX平台上使用比较多)的Make工具,C/C++项目经常使用Make工具来管理整个项目的编译,生成 Make使用Shell命令来定 ...
- python3.5+django2.0快速入门(二)
昨天写了python3.5+django2.0快速入门(一)今天将讲解配置数据库,创建模型,还有admin的后台管理. 配置数据库 我们打开mysite/mysite/settings.py这个文件. ...
- Ant快速入门(四)-----Ant的任务(Task)
到目前为止,我们已经掌握了Ant生成文件的基本结构,以及<project.../>,<target.../>,<property.../>等元素的配置方式.而< ...
- 快速入门系列--GIT版本控制工具
由于GIT刚刚开始使用不久,经常会在Merge时出现没有change-id的情况,在结合gerrit使用时,经常出现不能提交的情形,使得自己很困扰.最近有次熬夜加班,在代码完成后,由于多人在很短时间内 ...
- Mysql快速入门(二)
多表关联查询 JOIN 按照功能大致分为如下三类: CROSS JOIN(交叉连接) INNER JOIN(内连接或等值连接). OUTER JOIN(外连接) 交叉连接 交叉连接的关键字:CROSS ...
- Linux Bash Shell快速入门 (二)
BASH 中的变量介绍BASH 中的变量都是不能含有保留字,不能含有 "-" 等保留字符,也不能含有空格. 简单变量在 BASH 中变量定义是不需要的,没有 "int i ...
- mybatis快速入门(二)
这次接着上次写增删改查吧. 现将上节的方法改造一下,改造测试类. package cn.my.test; import java.io.IOException; import java.io.Inpu ...
- jquery 快速入门二
---恢复内容开始--- 操作标签 样式操作 样式类 addClass();//添加指定的CSS类名. removeClass();//移除指定的类名. hasClass();//判断样式不存在 to ...
随机推荐
- AGG 之贝塞尔插值
原文: http://liyiwen.iteye.com/blog/705489 之前 comp.graphic.algorithms 上有一个讨论,是关于怎么样使用曲线对多边形进行插值处理,使得最终 ...
- Linux 循环设备 /dev/loop 解惑
/dev/loop(或称vnd (vnode disk).lofi(循环文件接口))是一种伪设备,这种设备使得文件可以如同块设备一般被访问. 在使用之前,循环设备必须与现存文件系统上的文件相关联.这种 ...
- JSTL和select标签的组合使用
1.用于根据不同的值显示对应的内容,不能选择 <select name="grade"> <c:choose> <c:when test=" ...
- OpenMP并行程序设计
1.fork/join并行执行模式的概念 2.OpenMP指令和库函数介绍 3.parallel 指令的用法 4.for指令的使用方法 5 sections和section指令的用法 1.fork/j ...
- [Javascript] Logging Pretty-Printing Tabular Data to the Console
Learn how to use console.table to render arrays and objects in a tabular format for easy scanning ov ...
- (五)带属性值的ng-app指令,实现自己定义模块的自己主动载入
如今我们看下怎样使用带属性值的ng-app命令,让ng-app自己主动载入我们自己定义的模块作为根模块. <!DOCTYPE html> <html> <head> ...
- xcode6制作IOS .a静态库小记
xcode6制作IOS .a静态库小记 创建iOS静态库 简单写个打印的代码 编码完成之后,直接Run就能成功生成.a文件了,选择 xCode->Window->Organizer-> ...
- 第二篇:基于K-近邻分类算法的约会对象智能匹配系统
前言 假如你想到某个在线约会网站寻找约会对象,那么你很可能将该约会网站的所有用户归为三类: 1. 不喜欢的 2. 有点魅力的 3. 很有魅力的 你如何决定某个用户属于上述的哪一类呢?想必你会分析用户的 ...
- Android滚动截屏,ScrollView截屏
在做分享功能的时候,需要截取全屏内容,一屏展示不完的内容,一般我们会用到 ListView 或 ScrollView 一: 普通截屏的实现 获取当前Window 的 DrawingCache 的方式, ...
- linux之CentOS-7.0环境搭建
此文作为新手安装centos-7的图文教程. 一. 前言 最近,师兄要进行实验室架构搭建,需要学习docker.而docker是完全依赖于linux系统的.所以,有了这篇文章. linux有很多发 ...