On Tue, 8 Jun 2021 18:32:36 GMT, Jorn Vernee <jver...@openjdk.org> wrote:

>> This patch adds a `--validate` option to the jar tool which can be used to 
>> validate a jar file that might be malformed. For instance, if a jar is a 
>> multi-release jar, it is malformed if different versions expose different 
>> APIs.
>> 
>> The implementation is straight forward since there already exists validation 
>> logic that is run when creating or updating a jar. This patch just exposes 
>> that logic directly under a new command line flag.
>> 
>> I've enhanced the existing ApiValidatorTest to also create malformed jars 
>> using the zip file APIs (the jar tool does not output malformed jars) and 
>> run them through `jar --validate`.
>> 
>> Note that while the jdk's jar tool does not output malformed jars, 
>> third-party archiving tools might, or the jar could have been manually 
>> edited.
>> 
>> Some prior discussion here: 
>> https://mail.openjdk.java.net/pipermail/core-libs-dev/2021-May/077420.html
>> 
>> Testing: running jdk/tools/jar test suite locally, tier 1-3 (in progress), 
>> manual testing.
>
> Jorn Vernee has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Improve help message.

src/jdk.jartool/share/classes/sun/tools/jar/resources/jar.properties line 241:

> 239: \      --validate             Validate a jar. This process will validate 
> that the API\n\
> 240: \                             exported by a multi-release jar is 
> consistent across all\n\
> 241: \                             different release versions.

Thanks for the update. I see that that "jar archive" is used in some of the 
existing options so maybe tweak it to:

Validate the contents of the jar archive.
This option will validate that the API exported by ...

-------------

PR: https://git.openjdk.java.net/jdk/pull/3971

Reply via email to