在有eclipse集成环境下ant其实不是很重要,但有些项目需要用到,另外通过eclipse来学习和理解ant是个很好的途径,所以写他demo总结下要点,希望能够帮到大家。

一、本人测试环境eclipse3.6已自动集成了ant环境, 所以就不用单独下载配置ant环境了。

如果没有eclipse集成环境可以自己下载ant http://www.apache.org/ 下载最新的版本
解压ant 后设置ANT_HOME, PATH中添加ANT_HOME目录下的bin目录(如:ANT_HOME:D:\apache-ant-1.9.2,PATH:%ANT_HOME%\bin)
测试方法:开始-->运行-->cmd进入命令行-->键入 ant 回车,如果看到
Buildfile: build.xml does not exist!
Build failed
说明已经完成ant的设置。

二、创建一个java项目,AntTestDemo 创建一个测试类HelloAnt.java

 1 package com.zdz.ant.test;
2
3 /**
4 * java ant test
5 * @author zheng
6 *
7 */
8 public class HelloAnt {
9
10 public static void main(String[] args) {
11 System.out.println("Hello ant,by zdz!");
12 }
13
14 }

在项目根目录下创建一个build.xml文件,内容如下:

 1 <?xml version="1.0" encoding="UTF-8" ?>
2 <project name="AntTestDemo" default="run" basedir=".">
3 <property name="src" value="src"/>
4 <property name="dest" value="classes"/>
5 <property name="helloant_jar" value="helloant.jar"/>
6 <target name="init">
7 <mkdir dir="${dest}"/>
8 </target>
9 <target name="compile" depends="init">
10 <javac srcdir="${src}" destdir="${dest}"/>
11 </target>
12 <target name="build" depends="compile">
13 <jar jarfile="${helloant_jar}" basedir="${dest}"/>
14 </target>
15 <target name="run" depends="build">
16 <java classname="com.zdz.ant.test.HelloAnt" classpath="${helloant_jar}"/>
17 </target>
18 <target name="clean">
19 <delete dir="${dest}" />
20 <delete file="${helloant_jar}" />
21 </target>
22 <target name="rerun" depends="clean,run">
23 <ant target="clean" />
24 <ant target="run" />
25 </target>
26 </project>

为直观起见直接截图上来了

三、右键点击build.xml 运行ant,如下图所示:

运行结果:

Buildfile: D:\workspace\AntTestDemo\build.xml
init:
[mkdir] Created dir: D:\workspace\AntTestDemo\classes
compile:
[javac] Compiling 1 source file to D:\workspace\AntTestDemo\classes
build:
[jar] Building jar: D:\workspace\AntTestDemo\helloant.jar
run:
[java] Hello ant,by zdz!
BUILD SUCCESSFUL
Total time: 2 seconds

出来BUILD SUCCESSFUL 和预期结果说明ant跑成功了。

另外有可能会提示 includeantruntime 警告,出现这个警告只要把

<target name="compile" depends="init">
<javac srcdir="${src}" destdir="${dest}" />
</target>

修改为

<target name="compile" depends="init">
<javac srcdir="${src}" destdir="${dest}" includeantruntime="on" />
</target>

也就是添加 includeantruntime="on" 

这样出来的build结果是有些差别的,如上面就就变成下面结果了

Buildfile: D:\workspace\AntTestDemo\build.xml
init:
compile:
build:
run:
[java] Hello ant,by zdz!
BUILD SUCCESSFUL
Total time: 312 milliseconds

Java eclipse下 Ant build.xml实例详解的更多相关文章

  1. 转:Java eclipse下 Ant build.xml实例详解

    在有eclipse集成环境下ant其实不是很重要,但有些项目需要用到,另外通过eclipse来学习和理解ant是个很好的途径,所以写他demo总结下要点,希望能够帮到大家. 一.本人测试环境eclip ...

  2. Java eclipse下 Ant build.xml实例详解 附完整项目源码

    在有eclipse集成环境下ant其实不是很重要,但有些项目需要用到,另外通过eclipse来学习和理解ant是个很好的途径,所以写他demo总结下要点,希望能够帮到大家. 一.本人测试环境eclip ...

  3. [置顶] ANT build.xml文件详解

    Ant的优点 跨平台性.Ant是用Java语言编写的,所示具有很好的跨平台性. 操作简单.Ant是由一个内置任务和可选任务组成的. Ant运行时需要一个XML文件(构建文件). Ant通过调用targ ...

  4. ANT build.xml文件详解

    Ant的优点 跨平台性.Ant是用Java语言编写的,所示具有很好的跨平台性. 操作简单.Ant是由一个内置任务和可选任务组成的. Ant运行时需要一个XML文件(构建文件). Ant通过调用targ ...

  5. Java MyEclipse下Ant build.xml简单实例详解

    一.下载配置ant 1.首先下载ant: http://www.apache.org/ 下载最新的版本2.解压ant 后设置ANT_HOME, PATH中添加ANT_HOME目录下的bin目录(如:A ...

  6. Eclipse 运行ant build.xml

    在命令行cmd运行mvn clean install,ant compiler,提示上述信息,是因为 maven的这个插件要求jdk1.6,但是本地电脑环境变量jdk版本为1.7.将JAVA_HOME ...

  7. java中List的用法和实例详解

    java中List的用法和实例详解 List的用法List包括List接口以及List接口的所有实现类.因为List接口实现了Collection接口,所以List接口拥有Collection接口提供 ...

  8. JAVA Eclipse使用Maven构建web项目详解(SSM框架)

    tips: 启动项目后,welcome-file的链接即为测试用例 部署maven web项目 Eclipse使用Maven构建web项目详解 pom.xml添加webapp依赖: <depen ...

  9. 通过java程序调用ant build.xml配置文件中指定的target

    一.概述 通过ant实现项目的自动化部署,jar包生成,替换,tomcat关停.启动,查看项目日志: 通过java程序调用已编辑好的ant脚本build.xml配置文件中指定的target: 文中文件 ...

随机推荐

  1. zpf 获取表单等数据的用法

    2015年4月12日 12:25:35 星期日 zpf框架中获取表单数据的方法 //获得get,post,url中的数据 private function setData() { $this-> ...

  2. [转] Android Volley完全解析(一),初识Volley的基本用法

    版权声明:本文出自郭霖的博客,转载必须注明出处.   目录(?)[-] Volley简介 下载Volley StringRequest的用法 JsonRequest的用法   转载请注明出处:http ...

  3. [ 转] [Android]多式样ProgressBar

    多式样ProgressBar 普通圆形ProgressBar 该类型进度条也就是一个表示运转的过程,例如发送短信,连接网络等等,表示一个过程正在执行中. 一般只要在XML布局中定义就可以了. < ...

  4. nyoj113_字符串替换

    字符串替换 时间限制:3000 ms  |  内存限制:65535 KB 难度:2   描述 编写一个程序实现将字符串中的所有"you"替换成"we"   输入 ...

  5. nyoj163_Phone List_字典树

    Phone List 时间限制:1000 ms  |  内存限制:65535 KB 难度:4   描述 Given a list of phone numbers, determine if it i ...

  6. 【leetcode】Reverse Nodes in k-Group (hard)☆

    Given a linked list, reverse the nodes of a linked list k at a time and return its modified list. If ...

  7. iOS 本人必装插件

    本人觉得比较好用也实用的Xcode插件记录: 1. Alcatraz   插件通过它来管理 :    https://github.com/alcatraz/Alcatraz.git 2. Cocoa ...

  8. IIS6与IIS7中如何设置文件过期

    在IIS6中:一. 打开IIS管理器 二. 选中要设置的网站单击属性,打开站点属性菜单 三. 单击HTTP头选项卡 四. 单击 启用内容过期 如:设置30分钟后过期,此时间段后过期项中填30,单位选择 ...

  9. Struts2拦截器之ModelDrivenInterceptor

    叙述套路: 1.这是个啥东西,它是干嘛用的? 2.我知道它能干啥了,那它咋个用呢? 3.它能跑起来了,但是它是咋跑起来的是啥原理呢? 一.ModelDriven是个啥?他能做什么? 从前端页面到后端的 ...

  10. Hadoop组件之-HDFS(HA实现细节)

    NameNode 高可用整体架构概述 在 Hadoop 1.0 时代,Hadoop 的两大核心组件 HDFS NameNode 和 JobTracker 都存在着单点问题,这其中以 NameNode ...