I have created a Zip file on a JimFS FileSystem
instance. I would now like to read the Zip using the Java FileSystem
API.
Here is how I create the FileSystem
:
final FileSystem zipFs = FileSystems.newFileSystem(
source, // source is a Path tied to my JimFS FileSystem
null);
However, this throws an error:
java.nio.file.ProviderNotFoundException: Provider not found
Interestingly, the code works with the default FileSystem
.
FileSystem
?This is not supported before JDK 12 via that specific constructor (Path, ClassLoader
)
This was fixed in JDK12, with commit 196c20c0d14d99cc08fae64a74c802b061231a41
The offending code was in ZipFileSystemProvider in JDK 11 and earlier:
if (path.getFileSystem() != FileSystems.getDefault()) {
throw new UnsupportedOperationException();
}