Maven如何在您自己的项目中使用外部依赖关系?

时间:2019-08-20 13:03:38

标签: maven

我对Maven如何在pom.xml文件中配置依赖项有一个快速问题。在项目的pom.xml文件中,当我添加依赖项标签并提供工件ID和组ID时,Maven如何/在何处存储这些依赖项以在项目中使用?由于Maven是中央存储库,因此Maven是使用Internet提取依赖关系还是将其下载到本地计算机中并在本地计算机上使用?

2 个答案:

答案 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个依赖项,则它们会定期更新。