一,什么是java中的依赖关系:
依赖关系是指一个类对别一个类的依赖,比如说Employee类中有一个方法叫做TakeMoney(Bank bank)这个方法,在这个方法的参数中用到了Bank这个类,那么这个时候可以说Employee类依赖了Bank这个类,如果Bank这个类发生了变化那么会对Employee这个类造成影响。
我们在编写java程序的时候经常会出现这个错误:找不到依赖包。我们的解决办法是:
把下载的依赖包复制到项目src/lib下,刷新项目。(注:项目中有多个相同的依赖包时,编译运行时会报错,找不到依赖包)
长期开发java的伙伴会经常遇到上述的问题,其实有个很好的工具可以帮我们提高很高的效率。这就是Maven了。
二,什么是Maven?
Maven是当前最受欢迎的Java项目管理构建自动化综合工具,类似以前Java中的Ant、node.js中的npm、dotNet中的nuget、PHP中的Composer。
那为什么要用Maven呢?
在开发中经常需要依赖第三方的包,包与包之间存在依赖关系,版本间还有兼容性问题,有时还里要将旧的包升级或降级,当项目复杂到一定程度时包管理变得非常重要
每个Java项目的目录结构都没有一个统一的标准,配置文件到处都是,单元测试代码到底应该放在那里也没有一个权威的规范。
因此,我们就要用到Maven(使用Ant也可以,不过编写Ant的xml脚本比较麻烦)----一个项目管理工具。
Maven主要做了两件事:
- 统一开发规范与工具
- 统一管理jar包
如果没有Maven,你可能不得不经历下面的过程:
1.如果使用了spring,去spring的官网下载jar包;如果使用hibernate,去hibernate的官网下载Jar包;如果使用Log4j,去log4j的官网下载jar包.....
2.当某些jar包有依赖的时候,还要去下载对应的依赖jar包
3.当jar包依赖有冲突时,不得不一个一个的排查
4.执行构建时,需要使用ant写出很多重复的任务代码
5.当新人加入开发时,需要拷贝大量的jar包,然后重复进行构建
6.当进行测试时,需要一个一个的运行....检查
有了Maven,它提供了三种功能: