Maven 仓库

17 Mar 2025 | 阅读 2 分钟

Maven 仓库是一个包含打包的 JAR 文件和 pom.xml 文件的目录。Maven 在仓库中搜索依赖。有 3 种类型的 Maven 仓库

  1. 本地仓库
  2. 中央仓库
  3. 远程仓库

Maven 按照以下顺序搜索依赖

本地仓库 然后 中央仓库 然后 远程仓库

maven repositories

如果在这些仓库中找不到依赖,Maven 会停止处理并抛出错误。


1) Maven 本地仓库

Maven本地仓库位于您的本地系统中。当您运行任何 Maven 命令时,它由 Maven 创建。

默认情况下,Maven 本地仓库是 %USER_HOME%/.m2 目录。例如:C:\Users\SSS IT\.m2

maven local repository

更新本地仓库的位置

我们可以通过更改 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.javatpoint.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 搜索任何仓库。

下一个主题Maven pom.xml 文件