maven深入浅出

来源:互联网 发布:nba2015常规赛mvp数据 编辑:程序博客网 时间:2024/06/14 19:00

Maven 深入浅出

maven简介

maven与ant的区别:

1、ant 不是蚂蚁,而是意指"另一个整洁的工具"(Another Neat Tool),它最早用来构建著名的Tomcat,Ant也都是过程式的,开发者显式地指定每一个目标,以及完成该目标所需要执行的任务。针对每一个项目,开发都需要重新编写这一过程,这里都隐含着很大的重复。

Ant是没有依赖管理的,所以很长一段时间Ant用户都不得不手工管理依赖,这是一个令人头痛的问题。

2、Maven是声明式的,项目构建过程和过程各个阶段所需的工作都由插件实现,并且大部分插件都是现成的,开发者只需要声明项目的基本元素,Maven就执行内置的完整的构建过程。这在很大程度上消除了重复

Maven不仅内置了依赖管理,更有一个可能拥有全世界最多Java开源软件包的中央创库,Maven用户无须进行任何配置就可以直接享用。

 

Maven核心价值

简单:Maven暴露了一组一致、简洁的操作接口,能帮助团队成员从原来 的高度自定义的、复杂 的构建系统 中解脱出来,使用Maven现有的成熟的稳定的组件也能简化构建系统的复杂度。

交流与反馈:与版本控制系统结合后,所有人都能执行最新的构建并快速得到反馈。

测试驱动开发(TDD):TDD强调测试先行,所有产品都应该由测试用例覆盖。而测试是Maven生命周期的最重要的组成部分之一,并且Maven有现成的成熟插件支持,如JUnit和TestNG。

十分钟构建:十分钟构建强调我们能够随时快速地从源码构建出最终的产品。这正是Maven所擅长的,只需要一些配置,之后用一条简单的命令就能让Maven帮你清理、编译、测试、打包、部署,然后得到最终的产品。

持续集成(CI):CI强调项目以很短的周期(如15分钟)集成最新的代码。实际上,CI的前提是源码管理系统和构建系统。目前业界流行的CI服务器如Hudson和CruiseControl都能很好地和Maven进行集成。也就是说,使用Maven后,持续集成会变得更方便。

定有信用的工作区:这条实践强调开发者能够快速方便地了解到项目的最新状态。