我对Maven如何在pom.xml文件中配置依赖项有一个快速问题。在项目的pom.xml文件中,当我添加依赖项标签并提供工件ID和组ID时,Maven如何/在何处存储这些依赖项以在项目中使用?由于Maven是中央存储库,因此Maven是使用Internet提取依赖关系还是将其下载到本地计算机中并在本地计算机上使用?
答案 0 :(得分:1)
Maven存储库分为三种类型:
Maven首先开始在Maven在%USER_HOME%目录中创建的本地存储库中查找。要覆盖默认位置,请在%M2_HOME%\ conf目录中提供的Maven settings.xml文件中提及另一个路径。 当Maven在本地存储库中找不到任何依赖项时,它将开始在中央存储库中进行搜索。 有时,Maven也在中央存储库中找不到提及的依赖项。然后,它将停止生成过程并将错误消息输出到控制台。为了避免这种情况,Maven提供了 Remote Repository (远程存储库)的概念,该概念是开发人员自己的包含所需库或其他项目jar的自定义存储库。
对于用户定义的jar,还需要指定:
<repositories>
<repository>
<id>in-project</id>
<name>Name_of_your_project</name>
<url>file://${project.basedir}/libs</url>
</repository>
</repositories>
答案 1 :(得分:0)
在标准配置中,Maven首先在本地Maven存储库(用户目录中的.m2/repository
)中查找,如果找不到任何内容,它将尝试从您指定的远程存储库中下载。如果您未指定任何内容,它将使用MavenCentral。
当Maven找到东西时,它将被下载到本地Maven存储库中以备将来使用。如果您有-SNAPSHOT
个依赖项,则它们会定期更新。