Niels Basjes created AVRO-3716: ---------------------------------- Summary: Allow building with newer Maven plugins Key: AVRO-3716 URL: https://issues.apache.org/jira/browse/AVRO-3716 Project: Apache Avro Issue Type: Improvement Reporter: Niels Basjes Assignee: Niels Basjes
Several of the dependabot updates fail on Java 8 because of newer versions of plugins needing Java 11 or Java 17 to run. {code:java} Warning: Error injecting: org.apache.maven.plugins.checkstyle.CheckstyleViolationCheckMojo [206|https://github.com/apache/avro/actions/runs/4197990575/jobs/7281026269#step:7:207]java.lang.UnsupportedClassVersionError: com/puppycrawl/tools/checkstyle/api/AuditListener has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0{code} My proposal is to restructure the java maven build as follows: # The build requires Java 17 (or 11 if the next statement is incorrect) ## This means all plugins should work again. # The compiler must create Java 8 compatible classes (source=8, release=8) # To ensure it actually runs on all Java versions a basic set of tests are executed with all LTS Java versions (8, 11 and 17) and the newest intermediate (currently 19) #- Similar to what I have done here #-- https://github.com/nielsbasjes/yauaa/blob/main/.github/workflows/build.yml #-- https://github.com/nielsbasjes/yauaa/tree/main/analyzer/src/it/JavaPlain #-- https://github.com/nielsbasjes/ToolChainsInCiBuilds Additional things - The build environment for developers change which requires updated documentation and docker build. -- This message was sent by Atlassian Jira (v8.20.10#820010)