1. 概述

在这个教程中,我们将关注Maven在本地存储所有本地依赖的位置,即Maven本地仓库

简单来说,当我们运行Maven构建时,项目所需的库(jar、插件jar和其他构件)都会被存储在本地供后续使用。

同时要记住,除了这种类型的本地仓库,Maven支持三种类型的仓库:

  • 本地 - 在开发机器上的文件夹位置
  • 中央 - 由Maven社区提供的仓库
  • 远程 - 组织拥有的自定义仓库

现在,我们来关注本地仓库。

2. 本地仓库

Maven的本地仓库是本地机器上一个目录,用于存储所有项目构件。

当我们执行Maven构建时,Maven会自动将所有依赖的jar下载到本地仓库。通常,这个目录名为*.m2

以下是基于操作系统的默认本地仓库位置:

  • Windows: %USERPROFILE%\.m2\repository
  • MacOS: ~/.m2/repository
  • Linux: ~/.m2/repository

对于Linux和Mac,我们可以简写为:

  • ~/.m2/repository

*3. settings.xml中的自定义本地仓库*

如果找不到默认位置的仓库,可能是因为之前有了一些配置。

这个配置文件位于Maven安装目录下的conf文件夹中,名为settings.xml

以下是决定缺失本地仓库位置的相关配置:

<localRepository>${user.home}/.m2/repository</localRepository>

这就是我们如何更改本地仓库的位置。当然,如果我们更改了位置,就不再能在默认位置找到仓库。

之前存储在旧位置的文件不会自动移动。

4. 通过命令行传递本地仓库位置

除了在Maven的settings.xml中设置自定义本地仓库,mvn命令支持maven.repo.local属性,允许我们作为命令行参数传递本地仓库位置:

mvn -Dmaven.repo.local=/path/to/custom/local/repo

这样,我们就无需修改Maven的settings.xml

5. 总结

在这篇简短的文章中,我们了解了Maven本地仓库的默认设置。

我们还讨论了如何告诉Maven使用自定义的本地仓库位置。


« 上一篇: Java NIO Selector介绍
» 下一篇: WebJars入门介绍