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

Ant和Maven比较

阅读更多
MAVEN BOOK 写道
Apache Ant
•Ant 没有正式的约定如一个一般项目的目录结构,你必须明确的告诉 Ant 哪里去找源代码,哪里放置输出。随着时间的推移,非正式的约定出现了,但是它们还没有在产品中模式化。

•Ant 是程序化的,你必须明确的告诉 Ant 做什么,什么时候做。你必须告诉它去编译,然后复制,然后压缩。

•Ant 没有生命周期,你必须定义目标和目标之间的依赖。你必须手工为每个目标附上一个任务序列。

Apache Maven
•Maven 拥有约定,因为你遵循了约定,它已经知道你的源代码在哪里。它把字节码放到 target/classes ,然后在 target 生成一个 JAR 文件。

•Maven 是声明式的。你需要做的只是创建一个 pom.xml 文件然后将源代码放到默认的目录。Maven 会帮你处理其它的事情。

•Maven 有一个生命周期,当你运行 mvn install 的时候被调用。这条命令告诉 Maven 执行一系列的有序的步骤,直到到达你指定的生命周期。遍历生命周期旅途中的一个影响就是,Maven 运行了许多默认的插件目标,这些目标完成了像编译和创建一个 JAR 文件这样的工作。

   上面引用了简单,清晰的对比!在此,结合编程来说说自己的看法!

一:首先,如果把软件看成待处理的数据的话,那么ANT就是一个没有固定数据结构,那么自然对于其实现目标是程序化的,而反观MAVEN,MAVEN是个选好数据结构的,它就是我们的约定,所以在后面的目标实现来讲,MAVEN可以选择一套我们实践中高效的算法的!

二:MAVEN的最后实现是采用了我们习惯的面向对象,生命周期这些常用的概念,使得 理解与扩展得到了最大的重用性,而ANT同样也实现了目标,只是在一种杂乱,弱性的实现!这好比数据库语言和JAVA,同样可以完成诸如同样的关系,可是在表达和理解上是截然不同的!

三:最大限度的减少重复性,就是把委托,声明,约定,封装等等这些概念!比较ANT和MAVEN,MAVEN封装了比ANT多得多的东西,而且把谁该做的都分到各自的责任中,最后采用委托来实现联系成整体!

 由此,可以借签给我们软件设计很多知识!

分享到:
评论

相关推荐

    ant与maven使用指导

    ant学习指导文档 maven配置 maven常见问题问答 对于初学或想深入了解maven的童鞋以指导

    shell脚本一键安装Ant和Maven

    本文将详细介绍如何使用shell脚本来一键安装Apache Ant和Maven,这两个都是Java开发中的关键构建工具。 Apache Ant是一个Java库和命令行工具,其任务是驱动构建过程。它允许开发者通过XML描述构建过程,包括编译、...

    JAVA网上会议系统开源源码(采用Ant和Maven管理)

    在这个项目中,主要使用了Ant和Maven两个构建工具来管理依赖和构建流程。 首先,让我们深入了解Ant和Maven这两个工具。Ant是Apache软件基金会的一个项目,它是Java应用的构建工具,主要通过XML格式的构建文件...

    Maven 与 Ant 之比较

    标题“Maven 与 Ant 之比较”表明了本文将探讨两种在Java开发中广泛使用的构建工具——Maven和Ant。它们的主要功能是管理和自动化项目的构建过程,包括编译源代码、运行测试、打包应用以及部署。通过对两者进行对比...

    Maven2.Ant.Junit合集

    《Maven2.Ant.Junit合集》是一个包含多种IT工具和框架的资源包,主要聚焦于Java开发中的构建管理和单元测试。这个合集提供了PDF和CHM两种格式的文档,便于不同用户根据个人喜好进行阅读。以下是这些工具及其重要知识...

    Ant和Maven的作用是什么?两者之间功能、特点有哪些区别?.docx

    Ant和Maven的作用是什么?两者之间功能、特点有哪些区别?.docx

    maven-ant-tasks-2.1.3.zip

    通过手动配置和使用 `maven-ant-tasks-2.1.3.jar`,开发者可以在 Ant 构建环境中高效地管理依赖和执行 Maven 目标,提高开发效率。在实际项目中,根据具体的构建需求,合理运用 Maven Ant Tasks,可以大大提升开发和...

    maven下通用的ant配置文件

    maven下通用的ant配置文件,只要0积分。只需修改11行末尾的target/自己的工程名即可。

    maven ant thrift0.9.0

    标题 "maven ant thrift0.9.0" 涉及到的是三个关键的软件开发工具:Thrift 0.9.0、Apache Ant 和 Apache Maven。这些工具在Java和其他编程语言的开发环境中广泛使用,特别是在构建和部署分布式系统时。 Thrift ...

    ant-1.10+Maven-3.5i最新官方版下载

    Apache Ant和Maven是Java开发中两个非常重要的构建工具,它们各自有着独特的特性和用途,为开发者提供了自动化项目构建和管理的能力。 Ant是Apache软件基金会的一个项目,它是一款基于Java的构建工具。"ant-1.10"指...

    maven-ant-tasks.jar

    还在为找不到jar文件烦心吗,不用了到我空间来有你想要的,持续更新。。。 maven-ant-tasks.jar

    ant maven3

    标题中的“ant maven3”指的是两种在Java开发中广泛使用的构建工具——Ant和Maven3。Ant是Apache软件基金会的一个项目,它是一个基于XML的构建工具,主要用于自动化Java项目的构建、编译、测试和部署过程。而Maven3...

    hadoop编译所有工具包(包括ant,maven,findbugs,protobuf),附编译文档

    包括以下工具: apache-ant-1.9.12-bin.tar.gz apache-maven-3.5.4-bin.tar.gz findbugs-3.0.1.tar.gz hadoop-2.6.4-src.tar.gz protobuf-2.5.0.tar.gz 还有一份hadoop编译文档,照着操作顺利编译,亲测可用。

    maven compare to the ant

    本文将重点比较Maven和Ant两种流行的构建工具,分析它们的特点、优势以及应用场景。 #### Maven与Ant的基本介绍 1. **Apache Ant**: - **定义**:Ant是一款用Java编写的开源构建工具。 - **特点**:基于XML配置...

    通向架构师的道路(第二十三天)maven与ant的奇妙整合.docx

    Maven 和 Ant 是两种常见的自动化构建工具,它们都有其独特的优点和缺点。在本文中,我们将探讨如何将 Maven 和 Ant 整合,以充分发挥两者的优势。 一、Maven 介绍 Maven 是一款基于项目对象模型(POM)的自动化...

    maven-ant-tasks-2.1.3-src

    The Mavent Ant Tasks allow several of Maven's artifact handling features to be used from within an Ant build. These include: Dependency management - including transitive dependencies, scope ...

    ant-1.6.5.pom

    ant 1.6.5 pom

    maven安装和使用

    #### 三、Maven与Ant比较 Maven与Ant都是Java项目构建工具,但二者存在显著差异: 1. **POM概念**:Maven的核心是POM,这是一个XML文件,用于定义项目的结构、依赖以及其他配置信息。相比之下,Ant的构建文件更...

    maven plugin maven plugin

    有时,我们需要将 Maven 和 Ant 结合使用,比如当某些任务更适合用 Ant 来完成时。为此,Maven 提供了 `maven-antrun-plugin`,它允许在 Maven 构建流程中运行 Ant 任务。在 `pom.xml` 中定义 Ant 任务,可以充分...

Global site tag (gtag.js) - Google Analytics