4.1可靠性

现在让我们看看另一个让 maven 如此流行的东西——依赖管理。

如果你想将一些库添加到你的 Maven 项目中,你只需要将它添加到 pom 文件中的 dependencies 部分。它看起来很简单。

让我们将最新版本的 Spring 和 Hibernate 添加到我们的项目中。这是它的样子:

<dependencies>
 
  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
	<version>5.3.18</version> 
  </dependency>

  <dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
    <version>6.0.0.Final</version>
  </dependency>

</dependencies>

就是这样, 你不需要做任何其他事情。如果将这些行添加到项目中,IDEA 将立即下载所需的库。几秒钟后,您就可以在代码中使用它们的类了。

重要的一点:如果您将项目上传到 GitHub 或将其作为存档发送给某人,则保证此人能够构​​建它。所有关于库、依赖项和构建脚本的信息都已经硬连接到项目中。

4.2 如何在Maven Repository中搜索库

顺便说一下,我在不到一分钟的时间内将这两个库的 XML 添加到我的 pom.xml 中。不错,对吧?现在我将教您如何快速将任何库添加到项目中。

首先,Internet 上有一个中央公共 Maven 存储库,存储了数百万个库。它位于链接https://mvnrepository.com/,您可以直接在其中搜索您需要的库。

行家

其次,它可以更简单 - 立即写信给谷歌“maven hibernate”,点击第一个链接,你会得到:

行家 2

选择所需的版本并单击它。有时最新版本包含 Beta 后缀,然后选择旧版本。

我选择了版本 6.0.0.Final 并转到了最后一页。

此处的绿色框是您需要复制到 pom.xml 中的代码。全部。

4.3 依赖库

在构建项目时,您的 Maven 将首先在您的本地存储库中查找指定的库(工件)。如果他在那里没有找到它,那么他将在全局 Maven 存储库中查找。然后将其上传到您的本地存储库 - 以加速下一次构建。

但是除了这两个存储库之外,还有其他存储库。

首先,许多大公司都有带有自己库的 Maven 存储库。

其次,在Docker发明之前,很多项目都是简单的构建之后放到企业的Maven仓库中。什么?存放所有东西的好地方。并再次支持版本控制。

通常,如果您突然决定将第三方存储库连接到您的项目,那么这可以像添加依赖项一样简单地完成:

<repositories>
 
  <repository>
  	<id>public-codegym-repo</id>
  	<name>Public CodeGym Repository</name>
  	<url>http://maven.codegym.cc</url>
  </repository>
 
  <repository>
  	<id>private-codegym-repo</id>
  	<name>Private CodeGym Repository</name>
  	<url>http://maven2.codegym.cc</url>
  </repository>
 
</repositories>

每个存储库有 3 个东西:Key/ID、NameURL。您可以指定任何名称——这是为了您的方便,ID 也是为了您的内部需要,实际上您只需要指定 URL。

如果这是一个公共存储库,那么这个信息很容易被谷歌搜索到,如果它是一个公司的,那么当他们授予对这样一个存储库的访问权限时,他们会把它给你。

Maven 的创建者知道如何标准化,你无法拒绝他们。