【Apache Ant】ANT解析以及ANT在myEclipse中的使用

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 转载请注明出处:http://blog.csdn.net/qq_26525215本文源自【大学之旅_谙忆的博客】维基百科上对Ant的介绍:Apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。

转载请注明出处:http://blog.csdn.net/qq_26525215

本文源自大学之旅_谙忆的博客

维基百科上对Ant的介绍:

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

由Apache软件基金会所提供。默认情况下,它的buildfile(XML文件)名为build.xml。每一个buildfile含有一个<project>和至少一个预设的<target>,这些targets包含许多task elements。每一个task element有一个用来被参考的id,此id必须是唯一的。

<project>标签

default表示默认的执行目标,必须有的。
basedir-是工作的根目录 .号代表项目根目录,必须有的。
name表示项目名称。

<property>标签

<property name="src" value="cn.hncu"/>

变量名为src,值为cn.hncu.
在其他标签中用${src}-引用src的值,cn.hncu.

<target>标签

一个项目<project>标签下可以有一个或多个target标签,
一个target标签可以依赖其他target标签,(被依赖的标签先执行)
target所有属性如下所示:

name表示这个标签的名字,这个属性是必须的。
depends表示依赖的目标target标签的name。

Ant的depends属性指定了target的执行顺序,Ant会依照depends属性中target标签出现顺序依次执行每个target,在执行之前首先执行它所依赖的target标签

if表示仅当属性设置时才执行。
unless表示当属性没有设置时才执行。
description表示项目的描述(或者是对这个标签的作用进行表述)。

<mkdir>标签

该标签用于创建目录,它有一个属性dir用户指定所创建的目录.

<target name="md">
    <mkdir dir="d:/a/a1"/>
</target>

表示在D盘下创建a文件夹,a文件夹下创建a1文件夹。

<delete>标签

该标签用于删除目录,它有一个属性dir用户指定删除的目录.

<target name="del">
      <delete dir="d:/a/a1"></delete>
</target>

表示删除d盘的a目录下的a1文件夹以及a1文件夹下的所有文件。

<jar>标签

该标签用来生成一个JAR包

<target name="jar">
    <jar basedir="." destfile="d:/a/mail.jar">
    </jar>
</target>

basedir表示被归档成jar的文件目录。
destfile表示压缩成jar输出到那个目录,名字为啥。
includes表示被归档的文件模式。
exchudes表示被排除的文件模式。
manifest属性指定自己的META-INF/MANIFEST.MF文件,而不是由系统生成

<echo>标签

该标签用来在控制台输出信息,其输入如下:
message表示输入的内容。

<target name="hello2" depends="hello1" description="输出">
    <echo message="Hello222"></echo>
</target>

<target name="hello1" >
    <echo message="Hello111"></echo>
</target>

先输出Hello111再输出Hello222,因为hello2依赖hello1(depends)

标签

效果图:

<target name="jdoc">
       <javadoc sourcepath="src"
        destdir="d:/a/a"
        packagenames="cn.hncu.*"
        encoding="utf-8"
        docencoding="gbk">
       </javadoc>
    </target>

sourcepath-指定查找输入源文件的位置-src表示src下的所有源文件(.java)输入
destdir-输出的文件位置
packagenames-包名
encoding-源java文件的编码
docencoding-输出文件的编码

简单的例子:

<?xml version="1.0" encoding="utf-8"?>
<project basedir="." name="myMailWeb" default="hello2" >
    <property name="src" value="src"/>

    <target name="hello2" depends="hello1" description="输出">
       <echo message="Hello222"></echo>
    </target>

    <target name="hello1" >
        <echo message="Hello111"></echo>
    </target>

    <target name="jar">
        <jar jarfile="mal.jar" basedir="." destfile="d:/a/mail.jar">
        </jar>
    </target>

    <target name="jdoc">
       <javadoc sourcepath="src"
        destdir="d:/a/a"
        packagenames="cn.hncu.*"
        encoding="utf-8"
        docencoding="gbk">
       </javadoc>
    </target>

    <target name="md">
      <mkdir dir="d:/a/a1"/>
    </target>

    <target name="del">
      <delete dir="d:/a/a1" ></delete>
    </target>

</project>

在myEclipse中的运行:

选第一个是上次运行的targets标签,如果上次没运行,就是默认的。

选第二个Ant Build….就是让我们自己选运行哪个或者哪几个。

description就是运行时有提示的那个。

ant的知识点太多了,其实只是一个辅助我们的工具,个人觉得完全没必要去很熟练的使用所有的,但是打jar包,输出Javadoc等常用的,还是必须熟练。

转载请注明出处:http://blog.csdn.net/qq_26525215

本文源自大学之旅_谙忆的博客

目录
相关文章
|
1月前
|
存储 缓存 算法
分布式锁服务深度解析:以Apache Flink的Checkpointing机制为例
【10月更文挑战第7天】在分布式系统中,多个进程或节点可能需要同时访问和操作共享资源。为了确保数据的一致性和系统的稳定性,我们需要一种机制来协调这些进程或节点的访问,避免并发冲突和竞态条件。分布式锁服务正是为此而生的一种解决方案。它通过在网络环境中实现锁机制,确保同一时间只有一个进程或节点能够访问和操作共享资源。
68 3
|
2月前
|
安全 网络协议 应用服务中间件
AJP Connector:深入解析及在Apache HTTP Server中的应用
【9月更文挑战第6天】在Java Web应用开发中,Tomcat作为广泛使用的Servlet容器,经常与Apache HTTP Server结合使用,以提供高效、稳定的Web服务。而AJP Connector(Apache JServ Protocol Connector)作为连接Tomcat和Apache HTTP Server的重要桥梁,扮演着至关重要的角色
75 2
|
21天前
|
消息中间件 存储 负载均衡
Apache Kafka核心概念解析:生产者、消费者与Broker
【10月更文挑战第24天】在数字化转型的大潮中,数据的实时处理能力成为了企业竞争力的重要组成部分。Apache Kafka 作为一款高性能的消息队列系统,在这一领域占据了重要地位。通过使用 Kafka,企业可以构建出高效的数据管道,实现数据的快速传输和处理。今天,我将从个人的角度出发,深入解析 Kafka 的三大核心组件——生产者、消费者与 Broker,希望能够帮助大家建立起对 Kafka 内部机制的基本理解。
51 2
|
2月前
|
分布式计算 Java Apache
Apache Spark Streaming技术深度解析
【9月更文挑战第4天】Apache Spark Streaming是Apache Spark生态系统中用于处理实时数据流的一个重要组件。它将输入数据分成小批次(micro-batch),然后利用Spark的批处理引擎进行处理,从而结合了批处理和流处理的优点。这种处理方式使得Spark Streaming既能够保持高吞吐量,又能够处理实时数据流。
70 0
|
3月前
|
安全 搜索推荐 数据挖掘
文件解析的终极工具:Apache Tika
文件解析的终极工具:Apache Tika
165 0
|
5天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
18 2
|
1月前
|
缓存 Java 程序员
Map - LinkedHashSet&Map源码解析
Map - LinkedHashSet&Map源码解析
67 0
|
1月前
|
算法 Java 容器
Map - HashSet & HashMap 源码解析
Map - HashSet & HashMap 源码解析
52 0
|
1月前
|
存储 Java C++
Collection-PriorityQueue源码解析
Collection-PriorityQueue源码解析
60 0
|
1月前
|
安全 Java 程序员
Collection-Stack&Queue源码解析
Collection-Stack&Queue源码解析
80 0

推荐镜像

更多