Prior to this patch, if `--module-path` is specified in the command line:
during CDS dump time, full module graph will not be included in the CDS archive;
during run time, full module graph will not be used.

With this patch, the full module graph will be included in the CDS archive with 
the `--module-path` option. During run time, if the same `--module-path` option 
is specified, the archived module graph will be used.

The checking of module paths between dump time and run time is more lenient 
compared with the checking of class paths; the ordering of the modules is 
unimportant, duplicate module names are ignored.
E.g. the following is considered a match:
dump time      runtime
m1,m2             m2,m1
m1,m2             m1,m2,m2

I included some 
[notes](https://bugs.openjdk.org/browse/JDK-8328313?focusedId=14699275&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14699275)
 in the bug report regarding some changes in the corelib classes.

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

Commit messages:
 - 8328313: Archived module graph should allow identical --module-path to be 
specified during dump time and run time

Changes: https://git.openjdk.org/jdk/pull/21048/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21048&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8328313
  Stats: 460 lines in 17 files changed: 420 ins; 2 del; 38 mod
  Patch: https://git.openjdk.org/jdk/pull/21048.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/21048/head:pull/21048

PR: https://git.openjdk.org/jdk/pull/21048

Reply via email to