Skip to content

Comments

Migration to Java 25#50

Open
ViacheslavKlimov wants to merge 2 commits intomasterfrom
feature/java25
Open

Migration to Java 25#50
ViacheslavKlimov wants to merge 2 commits intomasterfrom
feature/java25

Conversation

@ViacheslavKlimov
Copy link
Member

Summary

  • Migrate build configuration to target Java 25
  • Update maven-compiler-plugin release target from 17 to 25 and add -parameters flag for Spring reflection compatibility
  • Add maven-surefire-plugin JVM args (-XX:+EnableDynamicAgentLoading, --add-opens) required for Mockito/ByteBuddy on Java 21+
  • Bump Lombok from 1.18.38 to 1.18.40
  • Update Dockerfile base image and README to reflect new version

Details

Build-configuration only change — no Java source code modifications. All existing source code is compatible with Java 25 as-is.

Property Before After
lombok.version 1.18.38 1.18.40
maven.compiler.source/target 25
maven-compiler-plugin release 17 25

Update build to target ThingsBoard 4.4.0-SNAPSHOT which requires Java 25.
Bump lombok to 1.18.40, add surefire JVM args for Mockito compatibility.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request attempts to migrate the ThingsBoard rule-node-examples project from Java 17 to Java 25, updating Maven compiler configurations, adding JVM arguments for Java 21+ test compatibility, upgrading Lombok, and bumping the ThingsBoard dependency version. However, there are critical issues with non-existent versions being referenced.

Changes:

  • Update Java compiler target from 17 to 25 across pom.xml properties and maven-compiler-plugin configuration
  • Add -parameters compiler flag and Surefire JVM args (-XX:+EnableDynamicAgentLoading, --add-opens) for modern Java compatibility
  • Upgrade Lombok from 1.18.38 to 1.18.40 and bump ThingsBoard version from 4.3.0.1 to 4.4.0-SNAPSHOT
  • Update documentation (README.md) and Dockerfile base image to reflect Java 25 and version 4.4.0-SNAPSHOT

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.

File Description
pom.xml Updates Java version to 25, adds compiler source/target properties, upgrades Lombok to 1.18.40, configures Surefire plugin with Java 21+ JVM args, and bumps ThingsBoard and Spring Boot versions
README.md Updates JDK requirement to 25+ and Docker build command to reference version 4.4.0-SNAPSHOT
Dockerfile Updates base image from thingsboard/tb-node:4.3.0.1 to 4.4.0-SNAPSHOT

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

…eters flag

Upgrade maven-compiler-plugin from 3.11.0 to 3.13.0 for better Java 25
support. Remove -parameters compiler flag as this project has no Spring
components that require method parameter name retention.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant