Maven 仓库



Maven 仓库

maven仓库是带有pom.xml文件的打包JAR文件的目录。 Maven在仓库中搜索依赖项。 Maven仓库有3种类型:
Maven按以下顺序搜索依赖项:
本地仓库,然后是
中央仓库,然后是
远程仓库

Maven 仓库_https://bianchenghao6.com_【Maven 教程】_第1张

如果在这些仓库中未找到依赖项,则maven会停止处理并引发错误

1、Maven本地仓库

Maven
本地仓库位于您的本地系统。它是在您运行任何maven命令时由maven创建的。
默认情况下,maven本地仓库为%USER_HOME%/。m2目录。例如:
C:\Users\SSS IT\.m2

Maven 仓库_https://bianchenghao6.com_【Maven 教程】_第2张

更新本地仓库的位置

我们可以通过更改
settings.xml 文件来更改Maven本地仓库的位置。它位于
MAVEN_HOME/conf/settings.xml 中,例如:
E:\apache-maven-3.1.1\conf\settings.xml
让我们看看settings.xml文件的默认代码。

settings.xml
 
...
<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>

现在将路径更改为本地仓库。更改本地仓库的路径后,它将如下所示:

settings.xml
...
<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>e:/mavenlocalrepository</localRepository>
  
...
</settings>

您可以看到,现在本地仓库的路径为e:/mavenlocalrepository。

2、Maven中央仓库

Maven
中央仓库位于Web上。它是由Apache Maven社区本身创建的。
中央仓库的路径为: http://repo1.maven.org/maven2/。
中央仓库包含许多通用库,可以通过此URL http://search.maven.org/#browse 。

3、Maven远程仓库

Maven
远程仓库位于Web上。中央仓库(例如JBoss库等)中可能缺少大多数库,因此我们需要在pom.xml文件中定义远程仓库。
让我们看一下在pom.xml文件中添加jUnit库的代码。

pom.xml
 
<project xmlns="http://maven.apache.org/POM/4.0.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.lidihuo.application1</groupId>
  <artifactId>my-application1</artifactId>
  <version>1.0</version>
  <packaging>jar</packaging>
  <name>Maven Quick Start Archetype</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.8.2</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>

您可以从Maven官方网站
mvnrepository.com 中搜索任何仓库。