🎯

java-25

🎯Skill

from bitsoex/bitso-java

VibeIndex|
What it does

java-25 skill from bitsoex/bitso-java

πŸ“¦

Part of

bitsoex/bitso-java(32 items)

java-25

Installation

πŸ“‹ No install commands found in docs. Showing default command. Check GitHub for actual instructions.
Quick InstallInstall with npx
npx skills add bitsoex/bitso-java --skill java-25
7Installs
35
-
Last UpdatedJan 29, 2026

Skill Details

SKILL.md

>

Overview

# Java 25 Upgrade

Upgrade Java projects to Java 25 with all required dependency updates.

When to Use

  • Project needs to upgrade from Java 21 to Java 25
  • Need features from Java 25 (records, pattern matching improvements, etc.)
  • Planning to stay on latest LTS-adjacent releases

Skill Contents

Sections

  • [When to Use](#when-to-use) (L22-L27)
  • [Prerequisites](#prerequisites) (L52-L57)
  • [Target Versions](#target-versions) (L58-L71)
  • [⚠️ DO NOT Upgrade](#do-not-upgrade) (L72-L77)
  • [Workflow](#workflow) (L78-L98)
  • [Version Catalog Updates](#version-catalog-updates) (L99-L114)
  • [Java Toolchain Configuration](#java-toolchain-configuration) (L115-L130)
  • [⚠️ Critical: Do NOT Use groovy-all](#critical-do-not-use-groovy-all) (L131-L143)
  • [Override Spring Boot's Groovy Version](#override-spring-boots-groovy-version) (L144-L152)
  • [References](#references) (L153-L158)
  • [Related Commands](#related-commands) (L159-L165)
  • [Related Skills](#related-skills) (L166-L169)

Available Resources

πŸ“š references/ - Detailed documentation

  • [preparation](references/preparation.md)

---

Prerequisites

  1. Spring Boot 3.5.x - Upgrade to Spring Boot 3.5.x first
  2. sdkman - For managing Java versions
  3. Java 25 Temurin - Install via: sdk install java 25.0.1-tem

Target Versions

| Component | Version | Notes |

|-----------|---------|-------|

| Java | 25 | Target JDK |

| Gradle | 9.2.1 | Major version required |

| Groovy | 5.0.3 | Java 25 requires Groovy 5.x |

| Spock | 2.4-groovy-5.0 | Must match Groovy version |

| Lombok | 1.18.42 | Java 25 bytecode support |

| Lombok Plugin | 9.2.0 | Freefair plugin for Gradle 9.2.1 |

| Spotless | 8.1.0 | Gradle 9 compatible |

| SonarQube Plugin | 7.2.2.6593 | Gradle 9 compatible |

| ByteBuddy | 1.17.5+ | ASM 9.8 for Java 25 |

⚠️ DO NOT Upgrade

  • protobuf: Keep existing version
  • grpc: Keep existing version
  • Spring Boot: Keep at 3.5.x (already upgraded)

Workflow

Phase 1: Prepare (Local Validation)

```bash

# Install and use Java 25

sdk install java 25.0.1-tem

sdk use java 25.0.1-tem

# Upgrade Gradle wrapper

./gradlew wrapper --gradle-version=9.2.1

# Update version catalog (see below)

# Build and test locally

./gradlew clean build test

```

Phase 2: Commit (After Tests Pass)

Only commit the toolchain change after all tests pass locally.

Version Catalog Updates

```toml

# gradle/libs.versions.toml

[versions]

groovy = "5.0.3"

spock = "2.4-groovy-5.0"

lombok = "1.18.42"

bytebuddy = "1.17.5" # If defined

[plugins]

lombok = "io.freefair.lombok:9.2.0"

spotless = "com.diffplug.spotless:8.1.0"

sonarqube = "org.sonarqube:7.2.2.6593"

```

Java Toolchain Configuration

```groovy

// root build.gradle

allprojects {

plugins.withType(JavaPlugin).configureEach {

java {

toolchain {

languageVersion = JavaLanguageVersion.of(25)

vendor = JvmVendorSpec.ADOPTIUM

}

}

}

}

```

⚠️ Critical: Do NOT Use groovy-all

The groovy-all:5.0.3 artifact has broken transitive dependencies:

```groovy

// ❌ NEVER: groovy-all has broken transitive deps

testImplementation 'org.apache.groovy:groovy-all:5.0.3'

// βœ… CORRECT: Let spock-core bring in Groovy 5.0.3 transitively

testImplementation libs.spock.core

testImplementation libs.spock.spring // if using Spring

```

Override Spring Boot's Groovy Version

```groovy

// root build.gradle

allprojects {

ext['groovy.version'] = libs.versions.groovy.get()

}

```

References

| Reference | Content |

|-----------|---------|

| [references/preparation.md](references/preparation.md) | Detailed preparation steps and prerequisites |

Related Commands

This skill is referenced by:

  • [/prepare-to-java-25](../../commands/prepare-to-java-25.md) - Local validation and preparation
  • [/upgrade-to-java-25](../../commands/upgrade-to-java-25.md) - Commit toolchain change

Related Skills

  • spring-boot-3-5 - Must upgrade first
  • gradle-9 - Gradle 9 upgrade patterns