gnodet opened a new pull request, #1158: URL: https://github.com/apache/maven-compiler-plugin/pull/1158
## Summary - Set up multi-release JAR build infrastructure: `src/main/java24/` compiled with `--release 24` into `META-INF/versions/24/`, JDK 25+ required at build time (plugin JAR still runs on JDK 17+). - Add `BytecodeAnalyzer` facade with `java.lang.classfile`-backed implementation on JDK 24+ and stub on older JDKs. Extracts type references from `.class` files, classifying them as signature (API surface) or implementation (method bodies). - Add `ClassfileClassAnalyzer`: full classfile analysis using the standard `java.lang.classfile` API — superclasses, interfaces, fields, methods, generic signatures, annotations, constant pool scan, module-info directives. - Add `ClassAnalyzer` base class and `Sha256` utility. - CI restricted to JDK 25+ to match the enforcer requirement. This is a prerequisite for the dependency-graph incremental build strategy (#1157). ## Test plan - [x] `BytecodeAnalyzerTest` (23+ tests): signature/implementation type classification, generics, annotations, module-info, inner classes, source file attribute, custom annotations - [x] `CompilerTestHelper`: shared compilation and analysis utilities for tests - [x] Full test suite passes - [x] Integration tests pass (`mvn verify -Prun-its`) 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- 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]
