Jenkins Maven Ant Hudson几个工具的比较

本文探讨了Maven和Ant作为构建工具的区别,Maven强调约定优于配置,提供依赖管理和生命周期。同时,介绍了Jenkins和Hudson这两个持续集成工具,它们源自同一源代码,但Jenkins为开源。Maven可以与Jenkins结合,用于自动化项目的构建和部署。

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

困扰于这几个工具的用途,故查了些资料和文档,并找到了一个很好的博文:
http://javarevisited.blogspot.com/2015/01/difference-between-maven-ant-jenkins-and-hudson.html

自己简单翻译和梳理一下:

ANT 和 Maven都是构建工具,所谓构建通常的工作有:生成源代码,编译,编译测试源代码,执行测试,打包,静态分析,生成报告;Maven在ANT之后出现,做了一些功能的拓展。

ANT VS Maven 主要的不同点有:
1. Maven只要很少的配置,而ANT是几乎每一项都要配置(源代码目录,Junit目录,库的目录等),Maven应用所谓的 Convention over configuration 的原则,做了一些合理的缺省的配置。
2. Maven提供了依赖管理,引入了repository的概念,来存放所有的依赖的library,JAR等,且在构建时Maven会自动下载依赖。 而ANT只是用了一个目录来存放library。
3. 第三个不同点事,Maven提供了一致的接口来构建java工程  pom.xml
4. Ant任务没有生命周期,需要定义targets和第三方依赖;Maven是有生命周期的,当指令被调用时,Maven会执行一系列步骤。
5.  Maven相比ANT不只是一个构建工具,更像一个工程管理工具,并生成报告。


Jenkins 和 Hudson: 二者是源于一个源代码库的,只是Jenkins开源而Hudson不开源,故事是这样的,Hudson原来是Sun公司的开源项目,Sun被Oracle收购后,Oracle就将商标和平台都控制收入囊下了,于是开源工作者么忍不了就重新开发了一个Jenkins。 二者都是持续集成的工具(CI),让工程可以定时地,自动地构建和部署。

Maven和Jenkins(Hudson)的区别:
1. Maven是构建工具,Jenkins则是触发构建(持续集成工具)的,通过jenkins控制何时构建。
2. Jenkins可以使用Maven作为构建工具,二者配合使用,当然,Jenkins还可以跑一些测试脚本,交付一些文件到服务器。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值