一、maven介绍
使用Maven工具是现在主流的项目管理工具,可以一站式的部署/构建项目.Maven的核心是pom.xml
maven官网:maven.apache.org/download.cgi
二、maven工作原理
本地仓库 :保存Maven下载的jar包文件
中央仓库:apache负责维护的管理全球主流jar包的仓库
Maven镜像:一些大型公司自己的Maven仓库
调用的原理:
- 当用户需要使用某jar包时,首先会检测本地仓库.
- 如果本地仓库中没有该jar包则连接镜像服务器下载jar包.
- 如果镜像服务器中有该jar包则直接获取jar包并保存到本地仓库中方便下次使用
- 如果镜像服务器中没有该jar包文件,则通过网络连接中央仓库进行jar包的下载.
- 保存到镜像服务器自己的仓库中,方便以后为别人提供服务.
- 之后再将镜像服务器中的jar包保存到本地仓库中方便下次使用.
- 也可以直接再镜像服务器中的jar包交给用户.
总结:由于国内的镜像架设在国内,所以下载的速度回很快
国内主流的私服镜像是阿里云
三、maven仓库修改
需求:项目中的jar包很庞大,需要很长时间下载,如果想不用下载,直接引用应该怎么处理?
方式:将别人的仓库拷贝后进行配置即可
修改本地仓库配置项目:
在apache-maven-3.3.9的conf里面的setting里,
1.配置本地仓库的路径,55行,注意"/"的方向,
2.配置连接阿里云镜像,148行
<!--阿里云maven镜像服务器配置 -->
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</mirror>
3.配置Maven的JDK,191行
<profile>
<id>jdk1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
四、idea配置maven
ps:
以下是eclipse的配置
1.配置maven
2.快速创建java项目
3.创建web
4.创建坐标
说明:使用Maven项目时创建的项目都有自己的骨架,主要的作用的就是为了 区分项目,方便管理.坐标是导入jar包的唯一标识.
问题1:中央仓库中的jar包如何管理?
答:每个公司都有自己的单独的域名,将来的jar包通过坐标的方式进行管理.
问题2:Maven中的jar包能不能自动的实现依赖?
答:maven中有自己的规则,可以实现jar包的自动的依赖,并且可以根据不同的版本依赖不同的jar包.并且依赖是由传递性的
问题3.maven中是如何实现jar包的自动依赖???
答:当maven进行jar包依赖时,在加载jar包时会扫描pom文件,之后解析pom文件进行jar包的依赖
问题4:maven进行jar包依赖时,如何保证jar包不被篡改?
答:SHA1是主要适用于数字签名标准
问题5:maven中生成的jar包路径?
本地仓库中根据坐标自动生成的jar包文件.
命令:mvn install 要求:在pom文件的同级目录下执行
部分截图: