hutool/hutool-bom
2025-02-18 09:18:07 +08:00
..
pom.xml prepare M21 2025-02-18 09:18:07 +08:00
README.md add readme 2023-04-17 01:04:37 +08:00

🍬Make Java Sweet Again.

👉 https://hutool.cn/ 👈

📚Hutool-bom 模块介绍

Hutool-bom模块只由一个pom.xml组成,同时提供了dependencyManagementdependencies两种声明。 于是我们就可以针对不同需要完成引入。


🍒使用

import方式

如果你想像Spring-Boot一样引入Hutool再由子模块决定用到哪些模块你可以在父模块中加入

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-bom</artifactId>
            <version>${hutool.version}</version>
            <type>pom</type>
            <!-- 注意这里是import -->
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

在子模块中就可以引入自己需要的模块了:

<dependencies>
    <dependency>
        <groupId>cn.hutool</groupId>
        <artifactId>hutool-http</artifactId>
    </dependency>
</dependencies>

使用import的方式只会引入hutool-bom内的dependencyManagement的配置其它配置在这个引用方式下完全不起作用。

exclude方式

如果你引入的模块比较多,但是某几个模块没用,你可以:

<dependencies>
    <dependency>
        <groupId>cn.hutool</groupId>
        <artifactId>hutool-bom</artifactId>
        <version>${hutool.version}</version>
        <!-- 加不加这句都能跑,区别只有是否告警  -->
        <type>pom</type>
        <exclusions>
            <exclusion>
                    <groupId>cn.hutool</groupId>
                    <artifactId>hutool-system</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
</dependencies>

这个配置会传递依赖hutool-bom内所有dependencies的内容当前hutool-bom内的dependencies全部设置了version就意味着在maven resolve的时候hutool-bom内就算存在dependencyManagement也不会产生任何作用。