240 字
约 48 秒
1
Maven 依赖管理
无标签

Maven 依赖管理

依赖传递

依赖树查看

查看依赖树

$ mvn dependency:tree

查看特定依赖的传递路径

$ mvn dependency:tree -Dincludes=org.springframework:spring-core

分析依赖冲突

$ mvn dependency:analyze

依赖冲突解决


<!-- 使用 dependencyManagement 统一管理版本 -->
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>5.3.21</version>
        </dependency>
    </dependencies>
</dependencyManagement>

<!-- 排除冲突的传递依赖 -->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-web</artifactId>
    <exclusions>
        <exclusion>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
        </exclusion>
    </exclusions>
</dependency>

BOM(Bill of Materials)


<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>2.7.0</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

依赖分析命令

分析未使用的依赖

$ mvn dependency:analyze

查找重复的依赖

$ mvn dependency:analyze-duplicate

解析依赖

$ mvn dependency:resolve

复制依赖到目录

$ mvn dependency:copy-dependencies -DoutputDirectory=lib

最佳实践

  • 使用 dependencyManagement 统一管理版本
  • 定期检查和清理未使用的依赖
  • 使用 BOM 简化版本管理
  • 避免使用版本范围,使用具体版本
  • 及时更新依赖版本,关注安全漏洞
Maven 依赖管理
http://www.clxhxhhr.top/posts/2893/
作者
clxstart
发布于
2026-09-19
许可协议
CC BY-NC-SA 4.0
评论
0 条
还没有评论,先写一条吧。