Maven工具学习使用(四)——仓库
仓库分类
对于Mavne来说,仓库只分为两类:本地仓库和远程仓库。当Maven根据坐标查询寻找构件的时候,它首先会查看本地仓库,如果本地仓库存在此构件,则直接使用;如果本地仓库不存在此构件,或者需要查看是否有更新的构件版本,Maven就会去远程仓库查找,发现需要的构件之后,下载到本地仓库在使用。如果本地仓库和远程仓库都没有需要的构件,Maven就会报错。
本地仓库
安装好maven后,如果不执行任何maven命令,本地仓库目录是不存在的,当用户输入第一条命令时,maven才会创建本地仓库,Linux或者Windows系统默认的本地仓库目录为用户目录下 .m2/repository/,然后根据配置和需要,从远程仓库下载构件至本地仓库。
通过修改Maven安装目录/conf/settings.xml文件或者.m2/settings.xml文件,设置localRepository属性指定本地仓库的目录地址
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<!-- localRepository
| The path to the local repository maven will use to store artifacts.
| Default: ${user.home}/.m2/repository
-->
<localRepository>/path/to/local/repo</localRepository>
</settings>
通过本地项目中执行 mvn clean install命令可以将本地项目安装到本地库中。
远程仓库
中央仓库是默认的远程仓库,Maven的安装文件自带了中央仓库的配置。安装目录lib子目录下maven-model-builder-xxx.jar包中
org\apache\maven\model\pom-xxx.xml文件中可以看到
<repositories>
<repository>
<id>central</id>
<name>Central Repository</name>
<url>https://repo.maven.apache.org/maven2</url>
<layout>default</layout>
<snapshots>
<enabled>false</enabled>
</snapshots>
</reposi