一、前言
刚开始学习java的时候,还是手动下载jar包,把然后把jar包放到项目的lib目录下, 所有开发的人员要求用同样版本的jar包,整个过程都是通过语言文档交流沟通的。效率非常低,项目开发很容易出现引用jar包版本不一致的情况。
Maven就正好解决jar包等相关问题,下面小编就向大家简单介绍一下Maven。
二、什么是Maven?
要回答maven是什么,我们看一个场景就知道了。
在maven之前,小王每一天来公司都胆战心惊,不知道那个实习生会昨天加班到十点干了啥,不幸的是他的模块要依赖实习生的,于是小王每天上班的前四个小时都会以下事情:
检索最新代码;
while(小王还没崩溃)
{
单元测试;
更新代码;
跑不通;
}
小王崩溃了,他跑过去问实习生:“起不来,什么情况,你动了啥?”实习生给出了经典回答:“在我电脑上一直很好啊。”小王一气之下,拷贝实习生所有jar包替换,终于工程起来了。小王如此死循环了一周,感觉项目这么继续下去要崩,于是找到了maven。
maven是啥,是绝佳的构建工具,帮你管理了从项目的开始到测试的所有过程,你可以用它(准确的说是maven的各个插件)编译、测试、清理、部署。maven同样可以帮你管理jar包,只要你在pom中配好相关的配置,maven就可以贴心地帮你下载好相应的依赖以及多重依赖。有了maven一般会配合Jenkins一起食用。maven管理你的项目的架构,Jenkins用于持续集成,及时发现团队项目中的潜在危险。
我们来看一下有了maven之后是什么样子的?小王的模块不幸依赖了实习生的模块。小王每天去上班首先看看Jenkins有没有给项目经理发邮件。而maven下面的模块依赖一直就是用稳定版的,项目稳如狗,美好的一天开始了。
一个项目管理工具
maven包含了一个项目对象,一组标准集合,一个项目生命周期,一个依赖管理系统,和用来运行定义在生命周期阶段中插件目标的逻辑。
三、好处
- 减少系统大小
传统项目中,所有的jar包是存放在项目中的,项目大小很大:
Maven项目中,把jar放到私服或者中央仓库,项目更加精简:
- 依赖管理
jar包存放到本地仓库,自动完成依赖管理。
- 一键构建
maven提供了编译、测试、运行、打包、部署等命令,可以直接一键构建。
- 跨平台
maven可以在windows和Linux等系统上运行,只要提供jdk,就可以直接运行。
四、小结
Maven就是一个非常方便的项目管理工具,有了Maven后再也不用自己去找jar包,拷贝,导入,再也不用手动构建。Maven和Jenkins自动化工具结合起来,让项目开发的更加有效率,使用的越来越快速。