解决gradle多模块依赖在Idea中能运行,gradle build失败的问题。

示例代码:https://github.com/EaseWalk/mutil-module-demo

最近需要初始化一个SpringBoot新项目遇到一个问题就是:项目中有多个子模块,使用gradle依赖管理成功。

项目结构如下:

project

     --module1
     --module2
我的module2模块依赖了module1模块,在module2模块中,使用到了module1中的某个类。在Idea中运行也没有问题,但是当我在module2模块中执行gradle build的时候,却报错了。说找不到module1中的某个类。

 

原因:因为在Idea中,module2可以直接从buildpath中读取到依赖模块中的代码,但是当在执行gradle build的时候,没有了Idea来管理buildpath,所以找不到了。即使在module2中的gradle里面写了compile project('module1')也不行。

这个时候,只需要让module1打成jar包,module2就能依赖上了。

解决办法:

在module1的build.gradle中加上jar.enabled=true即可。注意,加上这个配置以后,生成的jar包就是一个只包含自己模块里面的代码的jar包。所以,在最终要运行的jar的那个模块中不要使用。假如,我的module2是一个要执行的jar文件(standalone),就不需要加这个配置。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

easewalk

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值