RFR: 8299504: Resolve `uses` and `provides` at run time if optional services are missing

Alan Bateman alanb at openjdk.org
Fri Jan 17 07:28:03 UTC 2025


Extend the support for optional dependences to allow for a service to be optional. The post-resolution consistency check specified by `Configuration.resolve` is relaxed to allow for the possibility that the service may be module that is not in the module graph.

ConfigurationTest is ported from TestNG to JUnit and updated to add new tests testUsesOptionalService$N and testProvidesOptionalService$N. The port to JUnit is mostly trivial/mechanical changes but it does create a bit of noise - I can move this port to another issue if it makes the harder to see the additions to the test.

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

Commit messages:
 - Initial commit

Changes: https://git.openjdk.org/jdk/pull/23147/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=23147&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8299504
  Stats: 520 lines in 3 files changed: 220 ins; 51 del; 249 mod
  Patch: https://git.openjdk.org/jdk/pull/23147.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/23147/head:pull/23147

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


More information about the core-libs-dev mailing list