--- old/src/java.base/share/classes/java/lang/module/ModuleFinder.java 2016-10-07 20:49:32.000000000 +0000 +++ new/src/java.base/share/classes/java/lang/module/ModuleFinder.java 2016-10-07 20:49:32.000000000 +0000 @@ -33,7 +33,6 @@ import java.security.AccessController; import java.security.Permission; import java.security.PrivilegedAction; -import java.util.Arrays; import java.util.Collections; import java.util.HashMap; import java.util.HashSet; @@ -342,8 +341,8 @@ * @return A {@code ModuleFinder} that composes a sequence of module finders */ static ModuleFinder compose(ModuleFinder... finders) { - final List finderList = Arrays.asList(finders); - finderList.forEach(Objects::requireNonNull); + // make a copy since it's captured by the ModuleFinder instance below + final List finderList = List.of(finders); return new ModuleFinder() { private final Map nameToModule = new HashMap<>();