Java Modules have some secret features, that are mostly used by the JDK itself. One of these features is the incubating modules.
In the JEP 11: Incubator Modules it is described how it should work
If we use the jdk.incubator.concurrent module as an example - from JEP 428: Structured Concurrency (Incubator) - we can observe that:
This module is listed in the java --list-modules It is not resolved by default It warns in the console of the use of the incubating module One way of resolving an incubating module is by adding a requires some.