RFR: 8294972: Convert jdk.jlink internal plugins to use the Classfile API [v8]
Naoto Sato
naoto at openjdk.org
Thu Mar 16 17:04:33 UTC 2023
On Thu, 16 Mar 2023 16:18:46 GMT, Mandy Chung <mchung at openjdk.org> wrote:
>> The file `LineBreakIteratorData_th` is not a class file, thus the exception is appropriate. This plugin test is trying to verify the integrity of the generated jimage, not only the required class files for the specified locale, but also the required resources as such. The file itself is a binary file that the BreakIterator uses internally.
>
> @naotoj as these localedata resource files are not `.class`, the plugin should not use ASM (or Classfile API) to parse it but ASM ClassReader just happens to work. Is the format documented anywhere?
>
> @asotona I agree that this ASM dependency should be replaced with a simple class to parse the localedata resources. We can create a follow-up issue to document or validate the file format if appropriate.
There is no common binary format for "localedata", the file in question is the custom format specific for `BreakIterator`, ancient code from Taligent. IIUC, only description of the format is in the source: https://github.com/openjdk/jdk/blob/2f23c80e0de44815d26a7d541701e16c9c1d32bc/src/java.base/share/classes/sun/text/RuleBasedBreakIterator.java#L325
-------------
PR: https://git.openjdk.org/jdk/pull/12944
More information about the core-libs-dev
mailing list