While RandomGeneratorFactory makes internal use of ServiceLoader, there was never an intent to allow non-platform implementations of j.u.r.RandomGenerator to participate in the discovery and lookup as exposed by RandomGeneratorFactory.all(), RandomGeneratorFactory.of() and RandomGenerator.of().
The internal usage of ServiceLoader has some unintended drawbacks (JDK-8331223). To overcome them, the implementation can be simplified by removing ServiceLoader from RandomGeneratorFactory.
Also seeJDK-8330005 for preliminary work.
            
The internal usage of ServiceLoader has some unintended drawbacks (
Also see
- csr for
- 
                    JDK-8332131 Remove the usage of ServiceLoader in j.u.r.RandomGeneratorFactory -           
- Closed
 
-         
- relates to
- 
                    JDK-8330005 RandomGeneratorFactory.getDefault() throws exception when the runtime image only has java.base module -           
- Closed
 
-         
- 
                    JDK-8331223 RandomGeneratorFactory.all() throws ServiceConfigurationError if a java.util.random.RandomGenerator service is missing in the classpath -           
- Closed
 
-         
               There are no Sub-Tasks for this issue.
    
 
        