From 15709c65167c50bfb81af14032f6c0479651e22f Mon Sep 17 00:00:00 2001 From: gewuyou <1063891901@qq.com> Date: Fri, 2 May 2025 14:13:27 +0800 Subject: [PATCH] refactor(projectStructure):Adjust dependencies and module configuration - Remove duplicate Spring Boot BOM configurations from each module - Delete API dependencies in modules such as forgeboot-core, forgeboot-i18n - Add submodule dependencies in the root project - Optimize settings.gradle.kts, add forgeboot-webflux module --- build.gradle.kts | 15 ++++++++++----- forgeboot-core/build.gradle.kts | 2 +- forgeboot-i18n/build.gradle.kts | 5 ----- forgeboot-webmvc/build.gradle.kts | 3 +-- .../build.gradle.kts | 4 ---- .../build.gradle.kts | 4 ---- settings.gradle.kts | 7 ++++++- 7 files changed, 18 insertions(+), 22 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 065d2ba..2070e3c 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -35,8 +35,6 @@ allprojects { // 设置全局属性 ext { set(ProjectFlags.IS_ROOT_MODULE, false) - set(ProjectFlags.USE_SPRING_BOOT_BOM, false) - set(ProjectFlags.USE_CONFIGURATION_PROCESSOR, false) } afterEvaluate { if (project.getPropertyByBoolean(ProjectFlags.IS_ROOT_MODULE)) { @@ -53,13 +51,20 @@ allprojects { subprojects { version = rootProject.version afterEvaluate { - if (project.getPropertyByBoolean(ProjectFlags.USE_SPRING_BOOT_BOM)) { + val isRootModule = project.getPropertyByBoolean(ProjectFlags.IS_ROOT_MODULE) + val isStarterModule = project.name.contains("starter") + if (isRootModule) { dependencies { - implementation(platform(libs.springBootDependencies.bom)) + project.subprojects.forEach { + if (!it.getPropertyByBoolean(ProjectFlags.IS_ROOT_MODULE)) { + project.dependencies.add("api", project(it.path)) + } + } } } - if(project.getPropertyByBoolean(ProjectFlags.USE_CONFIGURATION_PROCESSOR)){ + if (isStarterModule&&!isRootModule) { dependencies { + implementation(platform(libs.springBootDependencies.bom)) annotationProcessor(libs.springBoot.configuration.processor) } } diff --git a/forgeboot-core/build.gradle.kts b/forgeboot-core/build.gradle.kts index d79c21c..2e3ca6a 100644 --- a/forgeboot-core/build.gradle.kts +++ b/forgeboot-core/build.gradle.kts @@ -1,3 +1,3 @@ dependencies { - api(project(Modules.Core.EXTENSION)) + } diff --git a/forgeboot-i18n/build.gradle.kts b/forgeboot-i18n/build.gradle.kts index 546debf..2d381df 100644 --- a/forgeboot-i18n/build.gradle.kts +++ b/forgeboot-i18n/build.gradle.kts @@ -1,8 +1,3 @@ -extra { - // 需要SpringBootBom - setProperty(ProjectFlags.USE_SPRING_BOOT_BOM, true) - setProperty(ProjectFlags.USE_CONFIGURATION_PROCESSOR, true) -} dependencies { implementation(project(Modules.Core.EXTENSION)) diff --git a/forgeboot-webmvc/build.gradle.kts b/forgeboot-webmvc/build.gradle.kts index 401b542..a51e0e0 100644 --- a/forgeboot-webmvc/build.gradle.kts +++ b/forgeboot-webmvc/build.gradle.kts @@ -4,6 +4,5 @@ extra { } dependencies { - api(project(Modules.Webmvc.VERSION_STARTER)) - api(project(Modules.Webmvc.LOGGER_STARTER)) + } diff --git a/forgeboot-webmvc/forgeboot-webmvc-logger-starter/build.gradle.kts b/forgeboot-webmvc/forgeboot-webmvc-logger-starter/build.gradle.kts index 230d590..36a2d8f 100644 --- a/forgeboot-webmvc/forgeboot-webmvc-logger-starter/build.gradle.kts +++ b/forgeboot-webmvc/forgeboot-webmvc-logger-starter/build.gradle.kts @@ -1,7 +1,3 @@ -extra { - // 需要SpringBootBom - setProperty(ProjectFlags.USE_SPRING_BOOT_BOM, true) -} dependencies { implementation(project(Modules.Core.EXTENSION)) implementation(libs.springBootStarter.aop) diff --git a/forgeboot-webmvc/forgeboot-webmvc-version-starter/build.gradle.kts b/forgeboot-webmvc/forgeboot-webmvc-version-starter/build.gradle.kts index 584f7c6..8ae3bd9 100644 --- a/forgeboot-webmvc/forgeboot-webmvc-version-starter/build.gradle.kts +++ b/forgeboot-webmvc/forgeboot-webmvc-version-starter/build.gradle.kts @@ -1,7 +1,3 @@ -extra { - // 需要SpringBootBom - setProperty(ProjectFlags.USE_SPRING_BOOT_BOM, true) -} dependencies { implementation(project(Modules.Core.EXTENSION)) diff --git a/settings.gradle.kts b/settings.gradle.kts index a29f8de..aebe6f9 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -48,4 +48,9 @@ include( "forgeboot-i18n" ) project(":forgeboot-i18n").name = "forgeboot-i18n-spring-boot-starter" -//endregion \ No newline at end of file +//endregion + +include( + "forgeboot-webflux", +) +project(":forgeboot-webflux").name = "forgeboot-webflux-spring-boot-starter"