- 浏览: 331097 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
longge424:
你好,可否将saml与spring security结合使用的 ...
SAML介绍 -
bnmnba:
mark
(转)Ant 学习笔记(一) -
redhacker:
写的还不错!谢谢!
SAML介绍 -
linluxian:
SAML介绍 -
hyj1254:
有效,good.
Linux创建目录与删除目录命令具体分析
下载地址:http://ant.apache.org/,在本文中下载的是1.8.1版本。解压到某个目录(例如D:\MyDocs\Plugins\Ant\using\ant),即可使用。
添加系统环境变量:ANT_HOME,该变量指向Ant解压后的根目录,在此为ANT_HOME=D:\MyDocs\plugins\Ant\using\ant
然后在环境变量Path后面增加:%ANT_HOME%\bin
安装与配置完毕后,读者可以测试一下Ant是否可用,首先进入Ant的bin目录,运行命令ant –version,若安装和配置成功,则会显示Ant版本信息,如下图所示:
由上可以看出,读者运行Ant的命令时,需要进入到Ant的bin目录,如何才能让系统自动找到Ant呢?这时需要读者在系统环境变量path中添加Ant的bin目录。设置完成后,我们就可以在任何目录(例如C:\目录)输入Ant的命令,来获得命令的运行结果 , 如下图所示:
Ant的构件文件是基于XML编写的,默认名称为build.xml。为了更清楚的了解Ant,在这里编写一个简单的Ant程序,用来展现Ant的功能,让读者对Ant有一个初步的了解。首先在E盘下建立一个build.xml文件,内容如下:
读者可以进入E盘,然后运行ant sayHelloWorld,可以看到如下的运行结果:
其中sayHelloWorld为需要执行的任务的名称。如果文件名不为build.xml,而为build1.xml时,读者运行同样的命令时,命令窗口会出现如下错误:
由上面的命令的错误提示可以看出,ant命令默认寻找build.xml文件。若文件名为build1.xml时,读者还需要对命令做少许改变,改为:ant –f build1.xml sayHelloWorld、ant –buildfile build1.xml sayHelloWorld或ant –file build1.xml sayHelloWorld。
效果如下:
接下来开始向读者讲解本节的重点:Ant的关键元素project、target、property和task。
project元素
project元素是Ant构件文件的根元素,Ant构件文件至少应该包含一个project元素,否则会发生错误。在每个project元素下,可包含多个target元素。接下来向读者展示一下project元素的各属性。
name属性
用于指定project元素的名称。
default属性
用于指定project默认执行时所执行的target的名称。
basedir属性
用于指定基路径的位置。该属性没有指定时,使用Ant的构件文件(即上文提到的build.xml文件)的附目录作为基准目录。
下面给读者一个简单的例子来展示project的各元素的使用。修改E:"build.xml文件,修改后的内容如下:
从上面的内容我们可以看出,在这里定义了default属性的值为sayBaseDir,即当运行ant命令时,若未指明执行的target时,默认执行的target的”sayBaseDir”,同时还定义了basedir属性的值为”D:\MyDocs\plugins\Ant\using\ant”,进入E盘后运行ant命令,可看到运行的结果,如下图所示:
因为设定了basedir的值,所以basedir属性的值变成了读者设置的值。读者可以自行将project元素的basedir属性去掉后运行ant看看运行结果,此时basedir的值变成了E:\,即为Ant构件文件的父目录, 如下图所示:
有的时候,读者可能有这种需求,即想得到某个project下所有的target的名称,读者可以通过在ant命令里加上-proecthelp来达到该目的。例如针对上述的例子我们运行ant –projecthelp,输出结果如下:
target元素
它为Ant的基本执行单元,它可以包含一个或多个具体的任务。多个target可以存在相互依赖关系。它有如下属性:
name属性
指定target元素的名称,这个属性在一个project元素中是唯一的。我们可以通过指定target元素的名称来指定某个target。
depends属性
用于描述target之间的依赖关系,若与多个target存在依赖关系时,需要以“,”间隔。Ant会依照depends属性中target出现的顺序依次执行每个target。被依赖的target会先执行。
if属性
用于验证指定的属性是否存在,若不存在,所在target将不会被执行。
unless属性
该属性的功能与if属性的功能正好相反,它也用于验证指定的属性是否存在,若不存在,所在target将会被执行。
description属性
该属性是关于target功能的简短描述和说明。
下面带领读者来看一个各属性综合使用的例子。修改E:"build.xml文件,修改后的内容如下:
进入E盘后运行ant targetB,可看到如下图所示的运行结果:
读者分析结果后可以看到,我们运行的是名为targetB的target,因该target依赖于targetA,所以targetA将首先被执行,同时因为系统安装了java环境,所以ant.java.version属性存在,执行了targetA这个target,输出信息:[echo] Java Version: 1.6,targetA执行完毕后,接着执行targetB,因为amigo不存在,而unless属性是在不存在时进入所在的target的,由此可知targetB得以执行,输出信息:The base dir is: E:\。
property元素
该元素可看作参量或者参数的定义,project的属性可以通过property元素来设定,也可在Ant之外设定。若要在外部引入某文件,例如build.properties文件,可以通过如下内容将其引入:
property元素可用作task的属性值。在task中是通过将属性名放在“${”和“}”之间,并放在task属性值的位置来实现的。
Ant提供了一些内置的属性,它能得到的系统属性的列表与Java文档中System.getPropertis()方法得到的属性一致,这些系统属性可参考sun网站的说明。
同时,Ant还提供了一些它自己的内置属性,如下:
basedir:project基目录的绝对路径,该属性在讲解project元素时有详细说明,不再赘述;
ant.file:buildfile的绝对路径,如上面的各例子中,ant.file的值为E:\build.xml;
ant.version:Ant的版本,在本文中,值为1.8.1;
ant.project.name:当前指定的project的名字,即前文说到的project的name属性的值;
ant.java.version:Ant检测到的JDK的版本,在上例运行结果中可看到为1.6。
下面让读者来看一个property元素使用的简单例子。修改E:\build.xml文件,内容如下:
该例的运行结果如下图所示:
由此读者可以看出,通过如下两个语句:
我们设置了名为name和age的两个属性,这两个属性设置后,读者在下文中可以通过${name}和${age}分别取得这两个属性的值。
发表评论
-
(转)Dubbo与Zookeeper、SpringMVC整合和使用(负载均衡、容错)
2015-06-04 16:49 1839互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已 ... -
OpenSessionInViewFilter详解(转)
2013-07-08 14:25 1461OpenSessionInViewFilter是Spring ... -
【转】web后台线程中获取spring容器内的bean
2013-05-16 14:59 1914有时候需要启动一个后台守护线程,做一些别的事情。这时候怎么获 ... -
JSP中文乱码的产生原因及解决方案-转
2013-05-15 17:33 2400JSP中文乱码的产生原因及解决方案在JSP的开发过程中,经常 ... -
责任链模式(转)
2011-11-22 21:38 1087责任链模式是一种对象的行为模式。 在责任链模 ... -
Spring Aspectj的使用
2011-11-03 15:25 1339Applicationcontext.xml代码 ... -
JS中的原型方法prototype
2011-11-01 11:03 1024JS中的phototype是JS中比较难理解的一个部分 ... -
java动态代理--JDK
2011-10-30 18:04 929JAVA的动态代理 代理模式 代理模式是常用的java ... -
Hibernate更新某些字段的几种update方法
2011-09-20 22:48 1773Hibernate 中如果直接使用 Session.up ... -
Hibernate的merge与update方法的区别
2011-09-20 22:47 974今天做了个测试,写了个测试用例来看看merge与update时 ... -
Hibernate学习:Transient、Persistent、Detached三个状态
2011-09-19 22:15 1437Transient、Persistent、Detached是H ... -
Hibernate中get和load方法的区别
2011-09-19 22:10 1022load加载方法: Users user = ... -
sping源码分析之properties操作(转载) .
2011-09-15 14:36 1178目前在开发的过程中遇到:通过spring在后台对前台 ... -
勉励继续写技术博客
2011-09-03 15:50 864最近一直就没怎么写博客,由于各种原因吧,客观的还有主观的 ... -
学习自定义标签----BodyTagSupport(转)
2011-07-08 10:48 2136这几天学习了一 ... -
Quartz学习笔记(二)
2011-01-25 21:34 1094下面给出一些表达式实例: 表示 ... -
Quartz学习笔记(一)
2011-01-25 21:33 1911Quartz特点 1) Quartz能嵌入到任何独立的 ... -
(转)Ant 学习笔记(二)
2011-01-25 21:20 1976ANT常用任务:Copy Tasks 注意:本节笔记中所 ... -
实现数据库查询分页Mysql
2010-11-06 10:05 1231//最近在笔试中遇到了一个要求写连接数据库及数据分页的 ... -
分布式与集群的区别(转)
2010-07-26 12:02 1127简单说,分布式是以缩 ...
相关推荐
### ant学习笔记:深入了解ant构建工具 #### 引言 `ant`,作为一款源自动网络的学习笔记,主要探讨了Apache Ant这一强大的构建工具。Apache Ant是一款开源的、跨平台的构建工具,专为Java应用程序设计,旨在简化并...
根据提供的文件信息,这里将深入解析“ant学习笔记:一个简单的java编译部署实例”,涵盖标题、描述、标签以及部分内容中提及的关键知识点。 ### Apache Ant简介 Apache Ant是一款开源的Java环境下的自动化构建...
《Ant学习笔记:详解Ant执行命令参数与系统属性》 Ant,作为一个基于Java的构建工具,因其跨平台性以及XML格式的构建脚本而被广泛应用于自动化构建过程,如编译、打包、测试等。本篇文章将深入探讨Ant执行命令的...
Ant 1.9.1是Ant的一个版本,学习笔记通常记录了使用该工具的基本操作和配置方法。 ### Ant的下载和安装 要使用Ant,首先需要下载并安装。在Windows系统中,通常需要配置环境变量以便于命令行中使用Ant命令。ANT_...
总的来说,这个“ant个人学习笔记和简单示例”应该能帮助你掌握Ant的基本用法,理解构建过程的自动化,以及如何编写和维护自己的构建文件。通过学习和实践其中的示例,你将能够熟练地运用Ant来构建和管理Java项目,...
在“Ant学习笔记”中,我们可以深入探讨以下几个关键知识点: 1. **Ant基本概念**:Ant是Apache软件基金会下的一个项目,主要由Java编写。它的核心类库`ant.jar`包含了所有执行构建任务所需的组件。XML文件,通常...
**Ant学习笔记** Apache Ant,一个Java库和命令行工具,其任务是驱动构建过程。它是Java世界中广泛使用的构建工具,类似于Unix世界的Make。Ant以其XML格式的构建文件(通常命名为`build.xml`)而闻名,这个文件包含...
《Ant构建工具学习指南》 Ant,作为Java领域的一个强大构建工具,它的主要作用在于将复杂的项目构建过程规范化、自动化,使得开发者能够更专注于代码的编写而非构建流程。本文将深入探讨Ant的基本概念、安装配置、...
### ant的学习笔记知识点详解 #### 一、Ant的作用与特性 Ant是一款强大的自动化构建工具,主要应用于Java项目,能够高效地处理项目的编译、打包、测试等任务。它采用XML格式编写构建脚本,这使得Ant具有良好的跨...
在"Ant打包编译部署工具学习笔记2"中,我们可以预期博主分享了关于如何利用Ant进行更复杂的构建操作,例如集成测试、优化和打包。这可能包括如何配置build.xml文件,添加自定义任务,以及如何处理依赖关系。由于没有...
### 经典Ant笔记知识点详解 #### 一、Ant简介及功能 - **定义与作用:** - Ant是一款开源的Java平台上的自动化构建工具,主要用于简化软件项目的构建过程,支持多种任务,如编译Java源代码、运行Java程序、复制...
NULL 博文链接:https://worktianqi.iteye.com/blog/2162932
Ant Design Pro 4.x学习笔记(一)基础 简介 自己学习的一点心得,希望有不足的地方,轻喷。 Ant Design Pro 是ant的一个项目,是一个企业级中后台前端/设计解决方案,与Ant Design 一脉同源。学习Ant Design Pro ...
React 学习笔记 React 是一个流行的前端框架,用于构建用户界面。学习 React 需要掌握其核心概念,包括组件生命周期、状态管理、事件处理等。本节笔记将记录 React 学习过程中的关键知识点。 一、React 组件生命...