5

我是 Maven 的新手。我正在阅读Maven - The complete reference并遇到了这一行:

Maven 假定父 POM 在本地存储库中可用,或者在当前项目的父目录 (../pom.xml) 中可用。如果两个位置都无效,则可以通过 relativePath 元素覆盖此默认行为。

Maven 安装和项目的本地和远程存储库到底是什么意思

4

3 回答 3

7

本地存储库是一种本地目录结构,它缓存从远程存储库下载的工件或手动安装的工件(例如从命令行选项)。

远程存储库是包含版本化工件的 Web 服务(由 URL 定义)。这可能像 Apache 服务器或成熟的 Maven 存储库一样简单,例如Artifactory,它允许上传、基于用户目录的权限等。

http://maven.apache.org/guides/introduction/introduction-to-repositories.html

于 2012-12-04T06:07:24.963 回答
3

默认情况下,Maven 将从本地存储库获取依赖项并将依赖项安装到本地.m2存储库。这是一个优先规则,你的.m2行为就像一个缓存,Maven 可以在远程下载它们之前获取依赖项。您可以像这样绕过这种行为:(mvn -U ...请参阅 参考资料mvn --help)。

您的本地.m2可以C:\Users\{user}\.m2在 Windows 或/home/{user}/.m2Linux 下找到。如果您执行mvn install,您的项目将本地安装在所述.m2存储库下。

远程存储库是一个 Maven 存储库,就像您的本地.m2存储库一样,托管供您从中获取依赖项,例如Maven Central

于 2012-12-04T08:34:01.227 回答
0

本地存储库是一个存储库。到您的本地系统中,当您编译或安装项目时,所有需要下载到本地 repo 的依赖项。当您使用您的项目时,maven 首先尝试从本地获取依赖关系,如果它不可用,那么它将尝试从中央存储库下载。中央回购。是一个在线回购。这是由 Maven 本身提供的。

关于每个 Maven 存储库,请在 Maven 中检查这个不同的存储库

于 2013-07-19T05:49:53.933 回答