ant是用来干什么的

ant是用来干什么的,第1张

Apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。

Ant运行时需要一个XML文件, Ant通过调用target树,就可以执行各种task。每个task实现了特定接口对象。

由于Ant构建文件 是XML格式的文答绝件,所以很容易维护和书写,而且结构很清晰。Ant可以集成到开发环境中。由于Ant的跨平台性和 *** 作简单的特点,它很容易集成到一些开发环 境中去。

扩展资料

Ant的depends属性指定了target的执行顺序。Ant会依照depends属性中清戚姿target出现顺序依次执行 每个target。

在执行之前,首先需要执行它所依赖的仔亏target。程序中的名为run的target的 depends属性compile,而名为compile的target的depends属性是prepare,所以这几个target执 行的顺序是prepare->compile->run。

一个target只能被执行一次,即使有多个target依赖于它。如果没有if或unless属性target总 会被执行。

参考资料来源:百度百科-apache ant

下载安判核装下载

需要设置的环境变量

ANT_HOME ant的安装目录

JAVA_HOME jdk的安装目录

PATH 把%ANT_HOME%\bin目录加到path变量 以便于从命令行下直接运行ant

假定ant解压在c \ant   jdk装d \j sdk

则在命令行下执行以下命令

set ANT_HOME=c:\antset JAVA_HOME=D:\j sdk set PATH=%PATH%c:\ant\bin

工程文件目录结构

一个ant 工程目录结构

C \workspace\ant test 工程主目录

\src 源程序目录

\build\classes 编译后的 class 文件目录

\lib 开发工程所需要的类库目录 比如开发数据库时所需要的 jdbc lib(这次没用到)

\jar 打包好的 jar 程序目录(这次没用到)

\build xml 工程配置文件\build propertiees 工程资源文件

建立工程描述文件和建立工程资源文件

建立工程描述文件build xml

<?xml version= ?><project default= main basedir= >    <echo message= pulling in property files />    <property file= build properties />    <target name= init >        <echo message= init delete the old class files and create the new folds />        <delete dir= ${classpath} />        <mkdir dir= ${classpath} />    </target>    <target name= pile depends= init >        <echo message= pile the java source files />   缓余     <javac srcdir= src\hello\ant destdir= ${classpath} />    </target>    <target name= main depends= pile >        <echo message= calling java to run this java project />        <java classname= hello ant HelloAnt >            <classpath>                <pathelement path= ${classpath} />            </classpath>        </java>    </target></project>

建立工程资源文件 build properties

文件内容是下面一行内容

classpath=build\\classes

建立java源文件 hello ant HelloAnt java

package hello antpublic class HelloAnt {    public static void main(String[] args) {        System out println( hello ant the first time using ant it is great )    }}

 扰冲滚  编译

lishixinzhi/Article/program/Java/ky/201311/28515

用 Eclipse3.1 来创建 Ant 脚本

如果你使用 Eclipse 来编写 Ant,建议使用 Eclipse 3.1 以后的版本。除了以前 Ant 编辑器提供的语法高亮,提示语法错误等功能外,Eclipse3.1 版本增加了许多新的功能。比如:脚本代码的折叠;快速定位某属性或者目标(target)段的定义;在同一 builder 文件中重构属性名和目标名(快捷方式 Alt + Shift +R);调试 Ant 脚本等。

下面我们就来看看 Eclipse 3.1 中对 Ant 的支持

打开“File”-“New”-“Project”-“Simple”-“Project”,点击“Next”,输入工程名“Ant”,然后点击直到“Finish”

在新建的 Ant 工程中,新建 Test.xml,并且拷贝下面的脚本。该段脚本的内容就不做介绍了,我们主要看 Eclipse 提供了哪些功能。注意这时候打开的并不是 Ant 编辑器,将内容拷贝进去之后,关掉打开的“Test.xml”,然后再重新打开它,这样 Eclipse 就会用 Ant 编辑器打开它,并且也语法高亮了。

<?xml version="1.0" encoding="UTF-8"?>

<project name="Test" default="init" basedir=".">

<property name="test" value="test"/>

<target name="init">

<echo>${test}</echo>

</target>

</project>

自动提示和代码折叠功能。如果是 Ant 内置的命令或者前面已经定义的变量,编辑器会自动提示;编辑器右边的加 / 减号可以代码折叠。如下所示:

快速定位目标(target)或者定义变量处。在上图中,将鼠标移至 default=”init” 中的 init 上之后,按下 ctrl 键,鼠标变成手状,单击就可以定位到定义该目标的地方

快速重构目标名或者属性名。选中目标 / 属性名,按下 Alt + Shift + R,然后键入你要修改后的值,所有引用到的地方都会随之改动。如下图所示,选中 init 后,按下快捷键,改成 initial:

调试 Ant 脚本。在标签“<target name=..”的左边设置一断点,然后在野稿碰编辑器中右击,出现的菜单中选“Debug As”-“Ant Build”,出现后的窗口与调试 Java 程序的界面差不多。

这是调试窗口,这里可以选择单步跟进、跳出等:

下面是运行时变量窗口。可以看到 test 变量颂谈的值是“test”:

运行结果窗口:

由此可见,如果使用好 Eclipse Ant 编辑器所提供强大的功能的话能大大提高写 Ant 脚本的效率。

回页首

Ant 中使用 property(属性)文件

刚开始写 Ant 的初学者可能会把所有的信息都放在 build.xml 中,下面就是这样的一个例子。

<project name="testBuild" default="compile" basedir=".">

<target name="init">

<mkdir dir="c:/temp/dest/testProj" />

</target>

<target name="compile" depends="init">

<javac srcdir="c:/temp/src/testProj" destdir="c:/temp/dest/testProj "/>

<echo>Build into c:/temp/dest/testProj, successfully.</echo>

</target>

</project>

在上面的例子中,所有的路径信息都是写在 build.xml 中。但是 Ant 脚本可能在不同的机器或者不同的系统上运行,敬斗也有可能一些值需要根据环境的不同而变化,在 Ant 中可以把所有这些可能变化的地方都放到一个配置文件中,然后在 Ant 脚本中引用这个配置文件就可以了,针对上面的例子,如下所示:

<project name="testBuild" default="compile" basedir=".">

<property file="build.properties"/>

<target name="init">

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

</target>

<target name="compile" depends="init">

<javac srcdir="${src.dir}" destdir="${dest.dir}"/>

<echo>Build into ${dest.dir}, successfully.</echo>

</target>

</project>

build.properties 的内容:

dest.dir=c:/temp/dest/testProj

src.dir=c:/temp/src/testProj

如果想在 Ant 脚本中引用值的话,只需用 $ 符号开头,在一对"{}"中写入要引用的键值。如上例中,需要引用编译的目标路径用"${dest.dir}"。

回页首

使用 Ant 任务从 CVS 中检出(check out)源代码,并编译打包

Ant 中提供了 cvs 任务(Task)可以从 CVS 服务器中检出资源(注意:在使用 Ant 的 cvs 任务之前,请先将 cvs.exe 下载到你的机器,并且将它添加到你本地的 PATH 环境变量中,然后重新启动 Eclipse。否则在执行下面脚本的时候就会得到 error=2 的错误)。cvs 的可选用属性很多,在这里介绍经常使用到的几个属性。从 CVS 中检出资源一般需要指定:

CVS 所在的服务器地址:目标 CVS 服务器地址

用户名:登录该 CVS 服务器你指定的用户名

密码:登录该 CVS 服务器需要的密码

库路径(Repository Path):服务器中的库路径

模块名:当前需要检出的模块名,一般都是以工程的名字作为模块名

标签名:需要从 CVS 中检出哪个标签

在介绍使用 Ant 的 cvs 之前,先说一下本地的目录结构。在 C 盘的 temp 目录下,分别有四个目录,如下所示:

build 目录:放编译后的类以及资源文件

dist 目录:放生成的 jar 文件或者 war 文件

lib 目录:放在编译过程中需要用到的 jar 文件

src 目录:放从 cvs 中检出的源文件(包括 JSP 等)

在 Ant 中这样写就可以从中检出资源:

<cvs cvsRoot=":pserver:username:pwd@cvs.server:/home/testPath"

package="TestProj" dest=" c:/temp/src/testProj " failonerror="true" />

这段脚本片断的意思就是从叫"cvs.server"的服务器中,用用户名是 username、密码为 pwd 的用户检出在库路径是 /home/testPath 下的 TestProj 模块(项目),检出后的资源放入本地目录 c:/temp/src/testProj 中。在上面这段脚本中,可以看到有很多值可能会根据不同的环境或者用户随之改变的,比如用户名和密码等;而且从脚本的重复可利用性来说,需要把有些值抽出来放到配置文件中,如服务器的地址和库路径等。因此把这些可能需要更改的地方放到 property 文件中,效果会更好。改完后的完整 Ant 脚本如下所示:

<?xml version="1.0"?>

<project name="testWeb" default="checkout" basedir=".">

<target name="checkout">

<property file="TestWeb.properties" />

<cvs cvsRoot="${cvs.root}" package="${cvs.projectName}"

tag="${cvs.tag}" dest="${src.dir}" failonerror="true" />

</target>

</project>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12505485.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存