[PATCH] 8218268: Javac treats Manifest Class-Path entries as Paths instead of URLs
Jonathan Gibbons
jonathan.gibbons at oracle.com
Thu Feb 28 15:39:19 UTC 2019
On 2/28/19 5:05 AM, Alan Bateman wrote:
> On 28/02/2019 12:13, Donald Kwakkel wrote:
>> Hi All,
>>
>> This is my first contribution to openjdk, so hope to learn a lot!
>>
>> I created a fix + tests for
>> https://bugs.openjdk.java.net/browse/JDK-8218268.
>> Now the manifest classpath is behaving the same in javac and java for
>> file paths.
>>
>> This fixes:
>> 1. The Java Compiler treats the entries as URLs, according to spec:
>> https://docs.oracle.com/en/java/javase/11/docs/specs/jar/jar.html#class-path-attribute
>>
>> 2. The behavior of the JVM ClassLoader and the Java Compiler is equal
>> (for file urls)
>>
> The compiler-dev mailing list is the best place to discuss changes to
> javac. However in this case you are going into a topic with a lot of
> sad history and where there is ongoing work to get the JAR file
> specification and the runtime support aligned [1][2]. So I think
> include the core-libs-dev list in the discussion to understand the
> changes there and how javac might be updated to align with that.
>
> -Alan
>
> [1] https://bugs.openjdk.java.net/browse/JDK-8217215
> [2] https://bugs.openjdk.java.net/browse/JDK-8216401
In addition to Alan's comments, I note that although you provided a test
(which is good), you wrote it as a shell test (which is not so good.)
Depending on how this work may proceed, it would be better to replace
the test with a Java test, perhaps using the test/langtools toolbox
classes, which were specifically written for this sort of use. However,
I strongly recommend that we sort out the spec issues first, before
working on any changes to the test.
-- Jon
More information about the jdk-dev
mailing list