RFR: 8338675: javac shouldn't silently change .jar files on the classpath [v4]
Joe Darcy
darcy at openjdk.org
Thu Mar 6 17:07:58 UTC 2025
On Thu, 6 Mar 2025 15:43:21 GMT, David Beaumont <duke at openjdk.org> wrote:
>> Modifying `JavacFileManager` to skip creating sibling output class files for source files found in JARs.
>>
>> This should match older (JDK 8) behavior whereby the JAR was not writable, and results in any newly generated class files being written to the current working directory (the output of class files into current directory isn't good, but it should match the old behavior).
>
> David Beaumont has updated the pull request incrementally with one additional commit since the last revision:
>
> Adding a test for the annotation processing Filer.
src/jdk.compiler/share/classes/com/sun/tools/javac/file/JavacFileManager.java line 921:
> 919: // Use the sibling to determine the output location where possible, unless
> 920: // it is in a JAR/ZIP file (we don't attempt to write class files back into
> 921: // archives). See JDK-8338675.
Per usual JDK coding conventions, we don't put bug numbers into source code.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/23699#discussion_r1983745971
More information about the compiler-dev
mailing list