# Java教程 - 14 Maven项目

Java 为什么那么强大,很大一部分原因是在实际的开发中,可以将别人开发的模块引入到我们自己的项目中,这样别人开发好了,我拿来就可以使用,很多复杂的功能也不用我们再去开发,而且别人开发的功能通常经过广泛的测试和验证,安全性和稳定性也得到保证,我们直接使用既可以提高开发效率,又可以提高项目质量。

# 14.1 jar包

那么如何在我们的项目中引入第三方开发的模块呢?

首先在 Java 中,可以将第三方的模块作为依赖引入到我们自己的项目中。这些依赖一般是以 Jar 包的方式存在。Jar(Java Archive)包是 Java 的一种文档格式,与平台无关,可将多个文件合成一个文件。JAR 包本质上是一个类的工具包,引入 Jar 包后,就可以直接使用其中的类。

通过引入第三方 Jar 包,可以快速、安全的在我们的项目中使用别人开发好的功能。

但是在实际的开发中,项目会引入很多很多的第三库,也就是在项目中会存在很多很多的 jar 包,如何清晰、规范的管理这些 jar 包也是一个问题。这个时候我们可以使用 Maven 来对项目进行构建和依赖的管理。

# 14.2 新建一个 Maven 项目

使用 IDEA 新建一个 Java 项目:

Build system 选择使用 Maven

新建完项目,项目结构如下:

后面我们新建 java 类,可以在 java 目录下新建包,在包下新建类就可以了。

resources 目录可以放一些资源文件,例如项目的配置文件。

pom.xmlMaven 用来管理项目的配置文件,用来管理项目结构和项目依赖等。

# 14.3 引入第三方依赖

我们在实际的开发中,经常会用到一些方法,例如判断字符是否为空,判断集合是否为空等,这些方法 JDK 中虽然有提供,但是使用起来还是不够方便,有很多第三方提供了工具包,将这些处理封装成了工具类,其中用的比较多的是 Hutool 包(官网:www.hutool.cn)。

下面就以在项目中引入 hutool 包依赖为例,介绍一下如何使用 Maven 引入hutool 包依赖。

首先项目在上面已经建好了。

# 1 引入依赖

在项目下的 pom.xml 中的 <dependencies> 标签下添加如下内容:

<!-- 引入hutool -->
<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.8.26</version>
</dependency>
1
2
3
4
5
6

此时 pom.xml 内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.doubibiji</groupId>
    <artifactId>hello-maven</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <!-- 引入hutool -->
        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>5.8.26</version>
        </dependency>
    </dependencies>

</project>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

添加完依赖配置可能会报红,因为虽然添加了依赖,但是对应的依赖 jar 包还没有下载下来,此时可以右键 pom.xml 加载项目,会重新下载依赖。

此时查看项目下依赖,也可以看到 hutool 包的依赖:

# 2 使用第三方类

hutool 包依赖已经引入了,下面可以使用 hutool 包中的类了。

新建包和类,名称你自己定,例如:


然后就可以编写 HutoolTest 测试类了:

下面简单使用了一下字符串、集合、时间的工具类,hutool 包中有很多的工具类,这里就不一一介绍了。

package com.doubibiji.hellomaven;

import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.date.LocalDateTimeUtil;
import cn.hutool.core.util.StrUtil;

import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class HutoolTest {
    public static void main(String[] args) {
        String abc = "";
        // 字符串工具类
        if (StrUtil.isEmpty(abc)) {
            System.out.println("abc为空");
        }

        List<String> List = new ArrayList<>();
        // 集合工具类
        if (CollUtil.isEmpty(List)) {
            System.out.println("List为空");
        }


        Date date = new Date();
        // 时间工具类,默认格式
        System.out.println(DateUtil.formatDateTime(date));
        // 指定格式
        System.out.println(DateUtil.format(date, "yyyy-MM-dd HH:mm"));

        LocalDateTime dateTime = LocalDateTime.now();
        // 新的时间工具类,默认格式
        System.out.println(LocalDateTimeUtil.formatNormal(dateTime));
        // 指定格式
        System.out.println(LocalDateTimeUtil.format(dateTime, "yyyy-MM-dd HH:mm"));
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40

上面简单讲解了一下使用 Maven 为项目引入第三方的依赖 Jar 包,使用第三方 jar 包中提供的功能。Maven 更复杂的功能需要单独学习 Maven 教程, 这里就不介绍了。