build: Update project structure and configuration - Remove related files from the forgeboot-webflux module

-Refactor settings.gradle.kts file to optimize project configuration and structure
- Add forgeboot-context, forgeboot-core, forgeboot-i18n and forgeboot-trace modules
- Update project dependency management and plug-in configuration
This commit is contained in:
gewuyou 2025-06-05 16:11:54 +08:00
parent 2258f26544
commit 05a8d3d409
4 changed files with 59 additions and 72 deletions

View File

@ -1,3 +0,0 @@
/gradlew text eol=lf
*.bat text eol=crlf
*.jar binary

View File

@ -1,40 +0,0 @@
HELP.md
.gradle
build/
!gradle/wrapper/gradle-wrapper.jar
!**/src/main/**/build/
!**/src/test/**/build/
### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
bin/
!**/src/main/**/bin/
!**/src/test/**/bin/
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
out/
!**/src/main/**/out/
!**/src/test/**/out/
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
### VS Code ###
.vscode/
### Kotlin ###
.kotlin

View File

@ -1,8 +0,0 @@
extra {
// 标记为根项目
setProperty(ProjectFlags.IS_ROOT_MODULE, true)
}
dependencies {
}

View File

@ -1,41 +1,73 @@
// The settings file is the entry point of every Gradle build.
// Its primary purpose is to define the subprojects.
// It is also used for some aspects of project-wide configuration, like managing plugins, dependencies, etc.
// https://docs.gradle.org/current/userguide/settings_file_basics.html
/**
* This settings.gradle.kts file configures the Gradle build for the forgeboot project.
* It sets up dependency resolution, plugins, and includes all relevant subprojects.
*/
// Configures the dependency resolution management across all subprojects
dependencyResolutionManagement { dependencyResolutionManagement {
// Use Maven Central as the default repository (where Gradle will download dependencies) in all subprojects. /**
* Use Maven Central as the default repository (where Gradle will download dependencies)
* The @Suppress annotation is used to bypass warnings about unstable API usage.
*/
@Suppress("UnstableApiUsage") @Suppress("UnstableApiUsage")
repositories { repositories {
mavenCentral() mavenCentral()
} }
} }
// Applies necessary plugins for the build process
plugins { plugins {
// Use the Foojay Toolchains plugin to automatically download JDKs required by subprojects. /**
* Use the Foojay Toolchains plugin to automatically download JDKs required by subprojects.
* This ensures consistent Java versions across different environments.
*/
id("org.gradle.toolchains.foojay-resolver-convention") version "0.8.0" id("org.gradle.toolchains.foojay-resolver-convention") version "0.8.0"
} }
// Include the `app` and `utils` subprojects in the build. // Sets the root project name
// If there are changes in only one of the projects, Gradle will rebuild only the one that has changed.
// Learn more about structuring projects with Gradle - https://docs.gradle.org/8.7/userguide/multi_project_builds.html
rootProject.name = "forgeboot" rootProject.name = "forgeboot"
//region module context
/**
* Includes and configures projects related to 'forgeboot-context'
* This module appears to be focused on contextual functionality within the application.
*/
include(
"forgeboot-context",
":forgeboot-context:forgeboot-context-api",
":forgeboot-context:forgeboot-context-impl",
":forgeboot-context:forgeboot-context-autoconfigure",
)
project(":forgeboot-context").name = "forgeboot-context-spring-boot-starter"
project(":forgeboot-context:forgeboot-context-api").name = "forgeboot-context-api"
project(":forgeboot-context:forgeboot-context-impl").name = "forgeboot-context-impl"
project(":forgeboot-context:forgeboot-context-autoconfigure").name = "forgeboot-context-autoconfigure"
//endregion
//region module banner //region module banner
/**
* Includes and configures projects related to 'forgeboot-banner'
* This module likely deals with banners or startup messages in the application.
*/
include( include(
"forgeboot-banner", "forgeboot-banner",
":forgeboot-banner:forgeboot-banner-api", ":forgeboot-banner:forgeboot-banner-api",
":forgeboot-banner:forgeboot-banner-impl", ":forgeboot-banner:forgeboot-banner-impl",
":forgeboot-banner:forgeboot-banner-launcher", ":forgeboot-banner:forgeboot-banner-launcher",
) )
project(":forgeboot-banner").name = "forgeboot-banner" project(":forgeboot-banner").name = "forgeboot-banner"
project(":forgeboot-banner:forgeboot-banner-api").name = "forgeboot-banner-api" project(":forgeboot-banner:forgeboot-banner-api").name = "forgeboot-banner-api"
project(":forgeboot-banner:forgeboot-banner-impl").name = "forgeboot-banner-impl" project(":forgeboot-banner:forgeboot-banner-impl").name = "forgeboot-banner-impl"
project(":forgeboot-banner:forgeboot-banner-launcher").name = "forgeboot-banner-launcher" project(":forgeboot-banner:forgeboot-banner-launcher").name = "forgeboot-banner-launcher"
//endregion //endregion
//region module webmvc //region module webmvc
/**
* Includes and configures projects related to 'forgeboot-webmvc'
* This module seems to handle Spring WebMVC-related functionalities like logging,
* exceptions, DTO handling, validation, etc.
*/
include( include(
"forgeboot-webmvc", "forgeboot-webmvc",
":forgeboot-webmvc:version", ":forgeboot-webmvc:version",
@ -57,6 +89,10 @@ project(":forgeboot-webmvc:spec").name = "forgeboot-webmvc-spec"
//endregion //endregion
//region module core //region module core
/**
* Includes and configures projects related to 'forgeboot-core'
* This module represents foundational components of the application.
*/
include( include(
"forgeboot-core", "forgeboot-core",
":forgeboot-core:forgeboot-core-extension" ":forgeboot-core:forgeboot-core-extension"
@ -66,6 +102,10 @@ project(":forgeboot-core:forgeboot-core-extension").name = "forgeboot-core-exten
//endregion //endregion
//region module i18n //region module i18n
/**
* Includes and configures projects related to 'forgeboot-i18n'
* This module handles internationalization (i18n) support.
*/
include( include(
"forgeboot-i18n", "forgeboot-i18n",
":forgeboot-i18n:forgeboot-i18n-api", ":forgeboot-i18n:forgeboot-i18n-api",
@ -78,14 +118,12 @@ project(":forgeboot-i18n:forgeboot-i18n-impl").name = "forgeboot-i18n-impl"
project(":forgeboot-i18n:forgeboot-i18n-autoconfigure").name = "forgeboot-i18n-autoconfigure" project(":forgeboot-i18n:forgeboot-i18n-autoconfigure").name = "forgeboot-i18n-autoconfigure"
//endregion //endregion
//region module webflux
//include(
// "forgeboot-webflux",
//)
//project(":forgeboot-webflux").name = "forgeboot-webflux-spring-boot-starter"
//endregion
//region module trace //region module trace
/**
* Includes and configures projects related to 'forgeboot-trace'
* This module handles distributed tracing functionality.
*/
include( include(
"forgeboot-trace", "forgeboot-trace",
":forgeboot-trace:forgeboot-trace-api", ":forgeboot-trace:forgeboot-trace-api",