--- old/src/java.base/share/classes/java/nio/file/FileSystems.java 2018-11-07 19:25:22.837840721 -0800 +++ new/src/java.base/share/classes/java/nio/file/FileSystems.java 2018-11-07 19:25:22.545840860 -0800 @@ -37,6 +37,8 @@ import java.util.ServiceLoader; import jdk.internal.misc.VM; +import static sun.nio.fs.BuiltinFileSystemProvider.BUILTIN_FILE_SYSTEM; +import static sun.nio.fs.BuiltinFileSystemProvider.BUILTIN_FILE_SYSTEM_PROVIDER; /** * Factory methods for file systems. This class defines the {@link #getDefault @@ -88,16 +90,6 @@ public final class FileSystems { private FileSystems() { } - // Built-in file system provider - private static final FileSystemProvider builtinFileSystemProvider = - sun.nio.fs.DefaultFileSystemProvider.create(); - - // built-in file system - private static class BuiltinFileSystemHolder { - static final FileSystem builtinFileSystem = - builtinFileSystemProvider.getFileSystem(URI.create("file:///")); - } - // lazy initialization of default file system private static class DefaultFileSystemHolder { static final FileSystem defaultFileSystem = defaultFileSystem(); @@ -118,7 +110,7 @@ // returns default provider private static FileSystemProvider getDefaultProvider() { - FileSystemProvider provider = builtinFileSystemProvider; + FileSystemProvider provider = BUILTIN_FILE_SYSTEM_PROVIDER; // if the property java.nio.file.spi.DefaultFileSystemProvider is // set then its value is the name of the default provider (or a list) @@ -189,7 +181,7 @@ if (VM.isModuleSystemInited()) { return DefaultFileSystemHolder.defaultFileSystem; } else { - return BuiltinFileSystemHolder.builtinFileSystem; + return BUILTIN_FILE_SYSTEM; } }