我是Maven的新手。我正在阅读Maven - The complete reference并看到了这一行:
Maven假定父POM可从本地存储库获得,或者可用 在当前项目的父目录(../pom.xml)中。如果两个位置都无效 可以通过relativePath元素覆盖此默认行为。
maven安装和项目的本地和远程存储库究竟是什么意思
答案 0 :(得分:6)
本地存储库是一种本地目录结构,用于缓存从远程存储库下载的工件,或者手动安装的工件(例如,从命令行选项)。
远程存储库是包含版本化工件的Web服务(由URL定义)。这可能就像Apache服务器一样简单,也可以像Artifactory这样完整的Maven存储库,允许上传,基于用户目录的权限等。
http://maven.apache.org/guides/introduction/introduction-to-repositories.html
答案 1 :(得分:2)
默认情况下,Maven将从您的本地.m2
存储库中获取依赖项,并将依赖项安装到本地.m2
存储库。这是一个优先规则,您的mvn -U ...
就像一个缓存,Maven可以在远程下载之前获取依赖关系。您可以像这样绕过此行为:mvn --help
(请参阅.m2
)。
您可以在Windows上的C:\Users\{user}\.m2
下找到您的本地/home/{user}/.m2
,或在Linux上找到mvn install
。如果您执行.m2
,您的项目将在本地安装在所述.m2
存储库下。
远程存储库是一个Maven存储库,就像您的本地{{1}}存储库一样,托管您从中获取依赖关系,例如: Maven Central
答案 2 :(得分:0)
本地存储库是一个回购。进入本地系统时,编译或安装项目时,所有需要依赖项都下载到本地仓库中。 当你使用你的项目时,maven首先尝试从本地获得依赖,如果它不可用,那么它将尝试从中央存储库下载。 中央回购。是一个在线回购。这是由maven本身提供的。
关于每个maven存储库,请检查此different repository in Maven