> On 19 Nov 2019, at 13:51, Alan Bateman <alan.bate...@oracle.com> wrote: > > ... > The warn-incubating flag is used in all phases to indicate that a module is > an incubator module and to warn when the module is resolved. Technically > these two concerns could be separated but this need hasn't arisen to date. > > The do-not-resolve-by-default flag excludes modules exporting APIs from the > default set of named modules to resolve when the initial module is the > unnamed module, i.e. class path applications. Technically this could be used > to exclude modules that aren't incubator modules (and I think we've got close > once or two to doing that).
The original design of ModuleResolution intended do-not-resolve-by-default to be consulted by the resolver when making decisions about whether or not to include the module in the resolution process by default. The warn-if-resolved value was intended to be used by tools and the launcher, to provide a warning reason if the module in question was resolved. -Chris.