gnodet opened a new issue, #12989:
URL: https://github.com/apache/maven/issues/12989

   ## Problem
   
   `mvnup`'s `PluginUpgradeStrategy` upgrades `maven-checkstyle-plugin` to 
3.6.0, which transitively pulls Checkstyle 10.x. Checkstyle 10.x requires JDK 
21 (class file version 65.0), but these projects build with JDK 17. The build 
fails:
   
   ```
   [ERROR] Failed to execute goal 
org.apache.maven.plugins:maven-checkstyle-plugin:3.6.0:check
     on project api-parent: ...
     UnsupportedClassVersionError: 
com/puppycrawl/tools/checkstyle/api/CheckstyleException
     has been compiled by a more recent version of the Java Runtime (class file 
version 65.0),
     this version of the Java Runtime only recognizes class file versions up to 
61.0
   ```
   
   Note: The maven4-testing workflow passes `-Dcheckstyle.skip=true`, but the 
check still executes for these projects — possibly because the project binds 
`checkstyle:check` to the `validate` phase with a custom execution ID that 
doesn't honor the skip property, or because the older plugin version handles 
the property differently.
   
   ## Affected projects (2)
   
   - `directory-ldap-api` — runs on JDK 17, checkstyle-plugin upgraded to 3.6.0
   - `directory-server` — same
   
   ## Expected behavior
   
   `mvnup` should check whether the upgraded plugin version (or its transitive 
dependencies) requires a higher JDK than the project's detected JDK. If so, it 
should either:
   1. Skip the upgrade
   2. Pin a compatible version (e.g., checkstyle-plugin 3.4.0 for JDK 17 
projects)
   3. Or at minimum, add a corresponding `<checkstyle.version>` property to pin 
a compatible Checkstyle version
   
   This is the same class of issue as the jar-plugin upgrade (#12984) — mvnup 
upgrades to latest but doesn't check JDK compatibility.
   
   ## Context
   
   Data from [maven4-testing](https://github.com/gnodet/maven4-testing) run 
#13307 testing `maven-4.0.x` against all Apache projects.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to