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