anthonyvdotbe opened a new issue, #1148:
URL: https://github.com/apache/maven-compiler-plugin/issues/1148

   ### Affected version
   
   3.16.0
   
   ### Bug description
   
   Imho, this method is problematic and should be deactivatable via a specific 
property.
   
   It uses ASM, which currently doesn't have a release with JDK 28 support yet, 
so Maven is unable to compile a modular project with a JDK 28 toolchain. 
(Unless you dig into the code of this plugin and realize you can set 
`<project.build.outputTimestamp></project.build.outputTimestamp>` in your POM 
as a workaround.)
   
   The idea is to ensure build reproducibility by overriding the version of the 
JDK modules in the module descriptor. However, I'd argue that building with 
different JDKs should not guarantee build reproducibility and that this method 
is thus not required.
   
   It is executed by default, which is problematic: I don't want Maven to 
modify my compiled code in any way, especially without explicit configuration.
   
   Its behavior differs from that of the JDK: this method sets the version to 
the `release` version, whereas the JDK either sets it to the full version 
(e.g., `21.0.10`) or to no version at all.


-- 
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