Gradle创建模块化的项目

介绍

模块化开发的主要优点包括:

  • 模块化:每个模块可以独立开发和测试,减少耦合和依赖管理的复杂性。

  • 复用:可以在多个项目中重用相同的模块。

  • 依赖管理:模块间的依赖关系可以在一个地方集中管理,简化了依赖版本冲突的解决。

Gradle 也是支持模块化开发的,在一个大的文件夹下面建立多个子文件夹,通过 Gradle 配置让多个子文件夹成为大文件夹(项目)的子模块。一般,一个 Gradle 多模块项目的目录结构如下:

root
| - lib
    | - src
        | - main
            | - java
            | - resources
        | - test
            | - java
            | - resources
| - app1
    | - src
        | - main
            | - java
            | - resources
        | - test
            | - java
            | - resources
| - app2
    | - src
        | - main
            | - java
            | - resources
        | - test
            | - java
            | - resources

创建模块化项目

  1. 首先在任意位置新建文件夹,名字叫做:gradle-multi-modules,在这个文件夹下面打开 CMD 窗口执行命令

    gradle init
    

    然后一直按 Enter 直到运行结束。运行 init 这个 task 的目的是要生成 gradle 项目所需要的文件和目录:gradle、build.gradle、gradlew、gradlew.bat、settings.gradle。

  2. 接着新建三个文件夹,分别为:lib、app1、app2,并分别在这三个文件夹下新建 build.gradle 空文件。

    然后编辑 settings.gradle 文件,添加如下行:

    include ":lib"
    include ":app1"
    include ":app2"
    

    这样,多模块项目就完成了。

    多级嵌套甚至还可以这样:

    	include ":app:app1"
    	include ":app:app2"
    	include ":x:xx:xxx:xxxx" // 理论上,实际不建议太深
    

创建多模块项目,可以直接引入兄弟模块作为依赖,例如在此项目中,直接在 app1 和 app2 的 build.gradle 中,引入 lib 作为依赖:

dependencies {
	implementation project(":lib")
}

统一管理依赖更是非常容易了,根项目的 build.gradle 中可以这样:

subprojects {
	denpendencies {
		// 以 spring-boot-starter 依赖的 bom 为例
		implementation platform("org.springframework.boot:spring-boot-dependencies:2.7.18")
		implementation("org.springframework.boot:spring-boot-starter-web") // 不再需要版本号
	}
}

通过模块化开发的方式,提高了开发效率,可以使用统一的版本来去除冗余依赖,使依赖树变得整洁干净。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值