mirror of
https://github.com/tiennm99/caro.git
synced 2026-05-23 06:24:25 +00:00
b7ff184387
Replace server/pom.xml with Gradle 9.2.1 (Kotlin DSL) + Shadow plugin for fat jar packaging. New files: - server/build.gradle.kts (Kotlin DSL script) - server/settings.gradle.kts - server/gradle/wrapper/ (committed wrapper, pinned to 9.2.1) - server/gradlew, gradlew.bat Deleted: - server/pom.xml Gradle config: - plugins: java, com.gradleup.shadow 8.3.5 - toolchain: JavaLanguageVersion.of(25) (auto-provisions if missing) - deps: netty-all 4.1.115.Final, protobuf-java 3.25.5, gson 2.11.0, junit-bom 5.11.3 + junit-jupiter (test) - compiler: -parameters, UTF-8 - test: useJUnitPlatform() - shadowJar: main class com.miti99.caro.server.SimpleServer, mergeServiceFiles(), append META-INF/io.netty.versions.properties - default assembly depends on shadowJar Output path migration: - server/target/caro-server-0.0.1-beta.jar moves under Gradle output conventions. Infrastructure: - server/Dockerfile: eclipse-temurin:25-jdk + committed wrapper (no Maven image); runtime stage unchanged. COPY order optimized. - .github/workflows/build.yml: setup-java temurin 25 + gradle/actions/setup-gradle, run gradlew with -p server. - .gitignore: add .gradle/, whitelist wrapper jar after *.jar rule. Docs + README fully updated to Gradle commands across: README.md, codebase-summary.md, code-standards.md, deployment-guide.md, project-overview.md, system-architecture.md. Validation: gradlew clean assemble check passes all 37 tests on Java 25.