Maven浅析-3 Ant Vs Maven

本文对比了构建工具Ant和Maven的特点。Ant是一款基于Java和XML的脚本工具,适用于跨平台使用,但配置文件庞大且复制粘贴操作频繁。Maven则遵循约定优于配置的原则,具备版本管理和依赖解析等功能,更适合大型项目的生命周期管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.什么是Ant?

Ant起源是为了取代构建工具Make。它可以跨系统,建立在Java和XML的基础上,而且非常程式化。

Ant更像一个脚本工具,我们必须在Ant内显示地声明做任何事情。在<target>内声明,而且没有统一的标准,一个application可能会包含庞大的repository。

2. Maven

Maven不仅仅是一个脚本工具,它更是一个成熟的构建工具。它有很多隐式的功能,譬如一致性,继承,transitive dependencies,版本管理。

3.优点和缺点<待完善>

Maven:

Maven can be a black box.

steeper learning curve

convertion over configuration

Better IDE integration

Less overheard through use of repos

different mindset, steepest learning curve is not making maven act like Ant

Ant:

we can trace Ant files fairly easily

quicker to learn, but very copy-paste intensive

larger project size in SCM, artifacts stored with project

 

e.g. Ant build.xml

<project>

  <target name="clean">

    <delete dir="build"/>

  </target>

  <target name="compile">

    <mkdir dir="build/classes"/>

    <javac srcdir="src" destdir="build/classes"/>

  </target>

  <target name="jar">

    <mkdir dir="build/jar"/>

    <jar destfile="build/jar/HelloWorld.jar" basedir="build/classes">

      <manifest>

        <attribute name="Main-Class" value="oata.HelloWorld"/>

      </manifest>

    </jar>

  </target>

 <target name="run">

   <java jar="build/jar/HelloWorld.jar" fork="true"/>

 </target>

</project>

e.g. Maven pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0"

    xmlns:xsi="http://www.x.org/xx/xxy"

    xsi:schemalocation="xx">

  <modelVersion>4.0.0</modelVersion>

  <groupId>com.dahang</groupId>

  <artifactId>HelloWorld</artifactId>

  <version>0.0.1-SNAPSHOT</version>

</project>

5.Summary:

Ant is very declarative.

Maven follows a convention over configuration model

Ant may be easier to learn, but it really is only beneficial as a scripting tool.

Maven is really centered around managing your entire project's lifecycle.

转载于:https://www.cnblogs.com/hangda1314/p/6264992.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值