RFR: 8331467: ImageReaderFactory can cause a ClassNotFoundException if the default FileSystemProvider is not the system-default provider
Alan Bateman
alanb at openjdk.org
Sat Dec 7 09:12:36 UTC 2024
On Sat, 7 Dec 2024 07:29:05 GMT, liyazzi <duke at openjdk.org> wrote:
> For two cases:
>
> 1. When the ImageReaderFactory was loaded by local jdk,that means the ImageReaderFactory was loaded by boot class loader,then init the `Path BOOT_MODULES_JIMAGE` by using `sun.nio.fs.DefaultFileSystemProvider` which is obtained through reflection,due to it is in jdk internal.
> 2. When loaded by a target jdk, such as jdk8 runtime, then use the Java 8 compatible APIs: `FileSystems.getDefault()` to init the `BOOT_MODULES_JIMAGE` field.
> Then we can avoid the circular dependencies in class loading caused by loading the defaultSystemProvider.
This is the 3rd PR created for this issue, would it be possible to say if you are working with jyxzwd on this issue?
-------------
PR Comment: https://git.openjdk.org/jdk/pull/22628#issuecomment-2525044205
More information about the core-libs-dev
mailing list