一.Maven 概念
百度百科
百度百科的解释实在不敢恭维,云里雾里。Maven到底是什么?为什么要用Maven?
我理解的Maven
概念:maven是一个很实用的依赖管理工具
知识储备
什么是依赖?互联网发展至今,我们早已站在巨人的肩膀之上,不是从0开始。要实现什么功能,都有对应的框架(jar包),所实现的功能越多,引用的框架(jar包)越多。这里有一个问题,框架(jar包)也不是从0开始,也会用到其他的jar包,jar包之间会存在相互引用、版本不一致、冲突等种种问题,这时你听起来可能已经有点乱了,有没有一个工具可以帮我们维护这个事情呢?maven于是应运而生,它就是专门处理需要引用哪些框架以及框架之间jar包冲突的一个工具,实际开发中应用非常广泛,maven中用依赖描述框架的引用关系。
二. maven怎么集成?
工程中要使用maven有两种方法 1是去maven官网(https://maven.apache.org/index.html)下载maven在集成到你的开发工具中(eclipse/idea)
2是你可以直接在idea中下载maven插件
具体怎么将maven集成到开发工具中,就不展开讲,很基础,网上也有很多资料,就不赘述了
三. maven集成后怎么使用
使用maven管理的项目都有一个pop.xml的配置文件,所有的依赖都在这个配置文件中维护,配置文件中标签的语法这里也不展开(标签语法网上也有很多资料),否则太细没有全局的认识篇幅也会过长
maven中的仓库是很重要的概念,不理解寸步难行
中央仓库,镜像仓库
中央仓库中收录了绝大多数开源jar包,供全球开发者使用,maven默认从中央仓库中下载资源文件,但中央仓库服务器在国外,国内访问会有连接失败、连接超时、下载慢等问题,为了弥补这个缺点,出现了很多镜像仓库,本质是提前将国外中央仓库的资源文件复制过来备份,由于镜像仓库服务器地址在国内,速度会很快,也不存在防火墙的问题,阿里的镜像仓库比较好用,用的人也很多
本地仓库
疑问:有了中央仓库、镜像仓库,本地仓库是啥,为什么需要本地仓库?
虽然镜像仓库比较快,但这个快是相对中央仓库的,能不能更快?能 那就是使用本地仓库,将用过的jar包放在本地电脑的磁盘上,每次启动程序去你本地电脑加载文件的速度肯定比去阿里重新下载的速度更快,本地找不到再去镜像仓库中下载
至此,maven的作用和工作原理已理解
四.应用
使用maven可能遇到的问题
1.项目启动问题
怎么让项目跑起来,怎么总是报错 理解了maven的原理,再看报错就很好解决了
解决方法一:没有配置镜像仓库,有的公司有自己的镜像仓库(不用阿里的),这是因为有的公司有自己开发的jar包,这时你需要找同事要一份maven的配置文件,替换你本地的maven配置文件。
maven配置文件地址:maven安装目录 /conf/settings.xml
解决方案二:如果公司没有镜像仓库就将镜像仓库配置成阿里镜像,settings.xml(地址:maven安装目录的 /conf/settings.xml)中添加如下配置
<mirrors>
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
解决方法三:上述方案都尝试了还是报错,报错少哪些包,找同事要,拿到包后放到本地仓库中,这种方法慢,一个包一个包的加,但肯定能解决问题。
本地仓库默认地址:C:\Users\用户名\.m2\repository
学会这三招足以解决99.9%的maven项目启动报错问题,我称之为程咬金的三板斧,哈哈,秘籍在此,快试试吧
|