> When performing an AOT training run using a multi-release JAR file, the > following warning can be encountered: > `[warning][aot] class org/example/Foo cannot be archived because it was not > defined from <path to mr.jar> as claimed` > This warning results from a specific configuration of the JAR file where the > class is not in the root directory but is present in the versioned directory > `META-INF/version`. To fix this, an upcall to ClassLoader.getResource() is > now made in the specific case where a multi-release JAR is being used and the > class cannot be found through normal means. Verified with tier 1-5 tests. > > > > > --------- > - [x] I confirm that I make this contribution in accordance with the [OpenJDK > Interim AI Policy](https://openjdk.org/legal/ai).
Matias Saavedra Silva has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 10 additional commits since the last revision: - Merge branch 'master' into version_class_jar_8380847 - Added assert - Ioi offline comments - Coleen and Alan comments - Ioi offline comments - Fixed build issues - Cleanup - Moved upcall to CDS.java - Cleanup - 8380847: Versioned class loaded from multi-release jar file is not cached ------------- Changes: - all: https://git.openjdk.org/jdk/pull/32087/files - new: https://git.openjdk.org/jdk/pull/32087/files/62b88d4e..8205702a Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=32087&range=07 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=32087&range=06-07 Stats: 256448 lines in 2640 files changed: 227719 ins; 15035 del; 13694 mod Patch: https://git.openjdk.org/jdk/pull/32087.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/32087/head:pull/32087 PR: https://git.openjdk.org/jdk/pull/32087
