Ant构建工具知识概括

Posted GeorgeLin98

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ant构建工具知识概括相关的知识,希望对你有一定的参考价值。

Ant构建工具知识概括题

构建工具对比

Maven和Ant对比:

  • 相同点:都是项目构建管理工具。
  • 不同点有:
    ①Maven约定了目录结构,而Ant没有。
    ②Maven是申明式的,用pom.xml文件;而Ant是程序式的,构建过程需要自定义,用builder.xml.
    ③Maven是有生命周期的,而Ant没有。
    ④Maven内置依赖管理和Repository来实现依赖的管理和统一存储;而Ant没有。Maven第一次install的时候会把依赖的jar包和构件从远处库(又叫中央库,http://repol.maven.org/maven2,统一存储maven可以解释的文件资源)下载到本地库(先从本地仓库找)。Maven还可以管理传递依赖。
    ⑤Maven配置比较简单,有很多的约定、规范、标准,可以用较少的代码干更多的事;而Ant配置比较麻烦,需要配置整个构建的过程(但Ant配置灵活)。

Make与Ant对比:

  • make:源代码变成可执行文件的过程叫做编译(compile);编译的顺序(先编译这个还是先编译那个)叫做构建(build);make就是一个根据指定的shell命令进行构建的工具.使用make命令,需要编写由shell命令组成的构建文件,即makefile.
  • Ant:Ant是apache基金会中的一个子项目,是一个java语言编写的跨平台的项目构建工具,构建时需要一个xml格式的构建文件,默认为build.xml.

Ant简介

Ant简介:

  • 什么是Ant:Ant是一种基于Java和XML的构建(build)工具。
  • 什么是构建:形象来说,差不多是把代码从某个地方拿过来,进行编译后再拷贝到某个地方去,等等操作
  • ant的好处:
    ①跨平台–因为ant是使用java实现的,所以它跨平台
    ②使用简单–与ant的兄弟make比起来
    ③语法清晰–同样是和make相比
    ④功能强大–ant能做的事情很多,可能你用了很久,你仍然不知道它能有多少功能。当你自己开发一些ant插件的时候,你会发现它更多的功能。
  • ant的兄弟make:ant做的很多事情,大部分是曾经有一个叫make的所做的,不过对象不同,make更多应用于c/c++ ,ant更多应用于Java。当然这不是一定的,但大部分人如此。
  • 链接:
    在intellij IDE中使用Ant
    Apache Ant对决Make:实战Java构建工具

环境配置:

  • 安装jdk和intellij IDE。
  • 下载Ant:
    ①将下载的压缩包解压到一个比较简单的路径
    ②链接:下载Ant的地址述
  • 在环境变量中配置变量ANT_HOME,值为H:\\apache-ant-1.7.1;在Path中添加:%ANT_HOME%\\bin;
  • 验证Ant是否安装成功,开始–>运行–>cmd,进入命令行–>键入 ant -version回车,如图,便表示Ant配置完成。

Ant的Demo例子:

  • 写一个简单的HelloWorld程序
  • 要运行Ant需要有一个build.xml,名字可以换成别的,但建议就用build。
    ①可以直接到工程文件下新建一个build.xml,刚开始这个xml文件旁边没有小蚂蚁图标,需要按照如图操作,点击intellij IDE右边菜单有个Ant Build小蚂蚁图标,点击后,再点击+,将我们新建的build.xml添加到Ant Build,之后,build.xml旁边就会出现小蚂蚁图标。
  • 编写build.xml的内容
<?xml version="1.0" encoding="UTF-8" ?>
<!--build.xml中的第一句话,没有实际的意义-->
<!--Ant的所有内容必须包含在<project></project>里面,name是你给它取的名字,basedir指工作的根目录,.代表当前目录,default代表默认要做的事情。-->
<project name="HelloWorld" default="run" basedir=".">
    <!--<property />设置变量-->
    <property name="src" value="src"/>
    <property name="dest" value="classes"/>
    <property name="hello_jar" value="hello1.jar"/>
    <!--每个target代表你想做的操作,给这个操作命名,及name值,depends是它所依赖的target在执行这个target,例如这里的compile之前ant会先检查init是否曾经被执行过,如果执行
        过则直接直接执行compile,如果没有则会先执行它依赖的target例如这里的init,然后在执行这个target-->
    <!--新建文件夹-->
    <target name="init">
        <mkdir dir="${dest}"/>
    </target>
    <!--开始编辑-->
    <target name="compile" depends="init">
        <javac srcdir="${src}" destdir="${dest}"/>
    </target>
    <!--创建jar包-->
    <target name="build" depends="compile">
        <jar jarfile="${hello_jar}" basedir="${dest}"/>
    </target>
    <!--开始运行-->
    <target name="run" depends="build">
        <java classname="HelloWorld" classpath="${hello_jar}"/>
    </target>
    <!--删除生成的文件-->
    <target name="clean" depends="run">
        <delete dir="${dest}"/>
        <delete file="${hello_jar}"/>
    </target>
    <target name="rerun" depends="clean,run">
        <ant target="clean" />
        <ant target="run" />
    </target>

</project>
  • 在intellij IDE里面按如下操作(运行),可以运行build.xml,可以看到生成的jar包。

Idea中Ant的其他操作:

  • 通过工具栏打开Ant配置页
    在这里插入图片描述
  • 我们将路径定位到Ant的安装目录既可:
    在这里插入图片描述
  • 执行Ant既可,或者执行某个指定的target:
    在这里插入图片描述
  • 我们可以在message下的Ant Build查看执行结果:
    在这里插入图片描述

以上是关于Ant构建工具知识概括的主要内容,如果未能解决你的问题,请参考以下文章

构建dubbo分布式平台-maven构建ant-utils工具项目

Gradle知识概括

Gradle知识概括

Gradle知识概括

Jenkins知识概括

深入了解Ant构建工具 命令