关于基础模块中的依赖由微服务中的子模块继承的时候依赖失效的问题

本文探讨了如何在项目结构中,当子模块引入包含<optional>true</optional>的common模块时,导致子模块仅能看到部分依赖。通过删除common模块的optional属性,解决了子模块完整继承依赖的问题,确保了正常的功能传递。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

common模块有以下的依赖

 <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <!--   一个Java工具包     -->
        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>5.1.0</version>
        </dependency>
    </dependencies>

子模块的依赖如下 :

 

在此种情况下我们的子模块如果引入了common模块是只能看到hutool这个依赖的!

原因如下:

当其他项目继承本项目时,如果dependences中加上了<optional>true</optional>,表示当前依赖不向下传递。

删除common模块的optional

恢复正常! 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值