`
g21121
  • 浏览: 694707 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

构建第一个Ant应用

 
阅读更多

        通过上篇对Ant介绍想必大家对Ant有了一定的认识,接下来我们通过构建一个简单的项目来深入学习Ant的机制及原理。

 

        1.我们新建一个Java项目,命名为"HelloAnt",在项目中新建类HelloAnt,包名为com.ant.hello,如下所示:


 

        2.为HelloAnt.java编写代码:

package com.ant.hello;

public class HelloAnt {
    
    public static void main(String[] args){
        System.out.println("Hello Ant!");
    }
    
}

 
        3.打开项目所在目录,我们会看到以下目录结构:



        项目已经弄好了,开始Ant构建之前,首先要编写Ant构建文件。构建文件定义了构建的流程,Ant构建文件默认命名为build.xml,也可以是其他名称,只不过在运行的时候把这个自定义名称当作参数传给Ant。构建文件可以放在任何的位置,一般做法是放在项目根目录或指定目录中,这样可以保持项目的简洁和清晰。
        下面是一个典型的项目层次结构:
            (1) src存放源文件。 
            (2) classes存放编译后的class文件。 
            (3) lib存放依赖Jar包。 
            (4) dist存放打包,发布以后的发布包文件(war,jar等)。

            (5) doc存放文档

            (6) web存放页面
        Ant构建文件是XML文件,每个构建文件定义一个唯一的项目(Project元素);每个项目下可以定义很多目标(target元素);这些目标之间可以有依赖关系(depends属性),当执行这类目标时,需要执行他们所依赖的目标。每个目标中可以定义多个任务,目标中还定义了所要执行的任务序列。Ant在构建目标时必须调用所定义的任务,任务定义了Ant实际执行的命令。
        Ant中的任务定义为3类: 
            (1) 核心任务。核心任务是Ant自带的任务,如java,javc,jar等等。 
            (2) 可选任务。可选任务实来自第三方的任务,因此需要一个附加的Jar文件。 
            (3) 用户自定义的任务。用户自定义的任务实用户自己开发的任务。

 

        4.开始编写我们的build.xml文件,其实在Ant的事例项目中已经有类似的构建文件,感兴趣的可以看看,下面是我们这个项目的build.xml文件内容: 

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

<!--  工程名:HelloAnt 默认开始target:run 所在目录:本目录 -->
<project name="HelloAnt" default="run">

	<!-- 源文件目录 -->
	<property name="src" value="src" />
	<!-- 类编译后输出目录 -->
	<property name="dest" value="classes" />
	<!-- 打包后输出目录 -->
	<property name="dist" value="dist" />
	<!-- 输出的jar文件 -->
	<property name="hello_jar" value="hello.jar" />

	<!--  初始化目标 -->
	<target name="init" depends="clean">
		<mkdir dir="${dest}" />
		<mkdir dir="${dist}" />
	</target>

	<!--  project声明的默认开始目标 -->
	<target name="run" depends="jar">
		<description>这里可以添加其他动作</description>
	</target>

	<!--  编译class文件 -->
	<target name="compile" depends="init">
		<javac srcdir="${src}" destdir="${dest}" includeantruntime="true" />
	</target>

	<!--  打包成jar -->
	<target name="jar" depends="compile">
		<jar destfile="${dist}/${hello_jar}" filesetmanifest="mergewithoutmain">
			<manifest>
				<attribute name="Built-By" value="${user.name}" />
				<attribute name="Main-Class" value="com.ant.hello.HelloAnt" />
				<attribute name="Class-Path" value="." />
			</manifest>
			<fileset dir="${dest}" />
		</jar>
	</target>

	<!--  清除编译痕迹 -->
	<target name="clean">
		<delete dir="${dest}" />
		<delete dir="${dist}" />
	</target>

	<!--  返回 -->
	<target name="rebuild" depends="clean, run">
		<ant target="clean" />
		<ant target="run" />
	</target>

</project>

 

        通过对标签的了解我们可以很清楚的知道每一个target的目标是什么,如:init是创建输出文件夹;compile是编译源文件等等。

        从他们的依赖关系我们可以很容易的理清target之间的序列关系,当启动HelloAnt这个构建project时,默认首先调用名为"run"的target,而run 的依赖是名为"jar"的target,这样在run执行前就需要运行jar这个target,同理向上推出最先执行的target,最终得出的序列顺序为:init-->compile-->jar-->run。

        我们看到在build.xml文件尾部还有一个名为"rebuild"的target,这个也很好理解,当我们默认执行"ant"命令时,Ant会默认调用project的default目标,但当我们为Ant指定target时,Ant会从指定的target开始构建,就如下列输入:

ant rebuild

        如果项目目录中出现我们指定的文件及文件结构说明我们构建成功了!

        当我们的项目比较简单时我们还可以自己去写build.xml,一旦项目非常庞大及复杂,我们肯定无法很轻松的完成构建文件,下几篇就学习一下利用插件等工具实现自动构建。

 

  • 大小: 5.3 KB
  • 大小: 8.6 KB
2
0
分享到:
评论

相关推荐

    讲解Ant的应用

    Apache Ant是一个专门为Java项目设计的自动化构建工具,它的出现是为了满足开发者在跨平台项目构建时遇到的种种问题。在1998年,当时的构建工具如GNUMake、批处理文件和shell脚本都不能很好地支持跨平台的构建,于是...

    ant ant ant ant

    在描述中反复出现的"ant ant ant antant ant ant antant ant ant ant"可能象征着构建过程的自动化和持续性,每一个“ant”代表一次自动化的构建动作,强调了Ant在持续集成和持续部署(CI/CD)中的作用。 至于标签...

    ANT构建解决方案-应用指南

    - `-find &lt;file&gt;`:在文件系统的根目录下搜索构建文件,并使用找到的第一个文件。 #### 三、编写build.xml文件 Ant的核心功能在于通过XML编写的构建文件`build.xml`来进行自动化构建。该文件包含一系列的任务,...

    ant 第一个例子

    下面,我们将详细探讨Ant的第一个例子及其相关知识点。 1. **Ant的基本概念**: Ant是一个Java库和命令行工具,其设计目标是驱动构建过程。它的主要任务包括编译、打包、测试和部署Java应用。与Make类似,但Ant是...

    Java.构建工具.ANT

    【Java 构建工具 ANT】是Java开发中的一个重要组成部分,它是Apache软件基金会开发的一个开源构建工具,主要用于自动化Java项目的构建、编译、测试和部署等任务。Ant以其灵活性和可扩展性著称,通过XML配置文件...

    Java构建工具之Ant

    在实际应用中,一个典型的Ant构建脚本可能包括以下几个部分: - `init`:初始化属性,如设置版本号、项目路径等。 - `clean`:清除上一次的编译结果和生成物。 - `compile`:编译Java源代码。 - `test`:运行单元...

    在eclipse中使用ant灵活构建web应用.docx

    在Eclipse中设置Ant的第一步是准备构建环境。通常,开发者会创建一个统一的库目录,用于存放各种依赖的JAR文件,如Jakarta Commons、Hibernate、Spring、Struts等。这有利于管理项目依赖,并且可以通过Eclipse的...

    java安装程序,利用Ant构建打包工具

    通过以上步骤,你可以利用Ant构建一个完整的Java应用程序安装程序,包括编译源代码、打包成JAR,以及创建可视化的安装界面。这不仅提高了开发效率,也确保了安装程序的一致性和可靠性。在实际开发中,根据项目的具体...

    ant脚本资料ant

    Ant是Apache软件基金会下的一个项目,它是一款强大的构建工具,主要用在Java环境中,用于自动化构建、测试和部署Java应用程序。Ant使用XML来描述构建过程和依赖关系,使得构建过程可配置且易于跨平台移植。 1. **...

    Ant.自动构建工具

    Ant是Apache软件基金会下的一个项目,它是一个基于Java的构建工具,主要用于自动化Java项目的构建过程。在软件开发中,构建工具的作用至关重要,它能够自动完成编译、测试、打包、部署等一系列繁琐的任务,极大地...

    Ant实战(第2版)

    Ant通常指的是Apache Ant,它是一个基于Java的构建工具,广泛应用于编程和软件开发领域,特别是在Java应用程序的构建过程中。Ant使用XML来描述构建过程,并且其构建文件通常被命名为build.xml。Ant的任务是通过XML中...

    Ant 1.7

    1. **构建文件**:一个Ant项目通常有一个名为`build.xml`的构建文件,它包含了整个构建过程的步骤和配置。文件中定义了不同的目标(target)和任务,以及它们之间的依赖关系。 2. **属性**:Ant支持定义和使用属性,...

    用Ant实现Java项目的自动构建和部署

    Apache Ant是一个基于XML的构建工具,它允许开发者定义任务序列,以便在没有人类干预的情况下执行一系列构建步骤。下面将详细阐述Ant在Java项目中的应用及其相关知识点。 1. **Ant简介** Ant是Java世界中广泛使用...

    Ant 1.9.1 学习笔记

    Ant是一个基于Java的构建工具,主要用于简化Java应用程序的构建过程,它通过XML文件来描述构建过程,执行编译、测试、打包等工作。Ant 1.9.1是Ant的一个版本,学习笔记通常记录了使用该工具的基本操作和配置方法。 ...

    ant应用开发

    - **default属性**:指定项目默认执行的目标名称,如果没有指定此属性,则默认执行第一个目标。 - **basedir属性**:定义项目的基准目录,默认为构建文件所在目录。 2. **Target元素**:代表一个具体的构建任务,...

    Apache Ant 是一个 Java 库和命令行工具,可帮助 构建软件

    Apache Ant 是一个强大的构建工具,尤其在Java开发领域中被广泛应用。它是一个由Apache软件基金会维护的开源项目,旨在提供一种灵活、可扩展的方式来管理Java应用程序的构建过程。Ant是基于XML的,这意味着构建指令...

    Java的Build工具—Ant应用指南(1)

    这篇“Java的Build工具—Ant应用指南(1)”将引领我们走进Ant的世界,了解其基本概念、配置和使用方法。 1. Ant基本概念 - 构建文件:Ant的主要工作是通过读取一个名为`build.xml`的XML文件来执行构建任务。这个...

Global site tag (gtag.js) - Google Analytics