Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8225815 | 14 | Sundararajan Athijegannathan | P3 | Resolved | Fixed | team |
Consider the following:
var uri = URI.create("jrt:/java.base/module-info.class");
var path = Path.of(uri);
assertTrue(Files.exists(path));
This fails because the file path returned by JrtFIleSystemProvider getPath(URI) is "/java.base/module-info.class", it should be "/modules/java.base/module-info.class".
If this bug is fixed then the following round trip should also work:
// check round-trip
var jrtfs = FileSystems.getFileSystem(URI.create("jrt:/"));
assertTrue(Files.exists(jrtfs.getPath(path.toString())));
var uri = URI.create("jrt:/java.base/module-info.class");
var path = Path.of(uri);
assertTrue(Files.exists(path));
This fails because the file path returned by JrtFIleSystemProvider getPath(URI) is "/java.base/module-info.class", it should be "/modules/java.base/module-info.class".
If this bug is fixed then the following round trip should also work:
// check round-trip
var jrtfs = FileSystems.getFileSystem(URI.create("jrt:/"));
assertTrue(Files.exists(jrtfs.getPath(path.toString())));
- backported by
-
JDK-8225815 JrtFIleSystemProvider getPath(URI) omits /modules element from file path
- Resolved
- relates to
-
JDK-8224908 Revert: 8216553: JrtFileSystemProvider getPath(URI) omits /modules element from file path
- Resolved
-
JDK-8224946 jrtfs URI to Path and Path to URI conversions are wrong
- Resolved