Локализованные данные/время встроенного образа GraalVMJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Локализованные данные/время встроенного образа GraalVM

Сообщение Anonymous »

В этом примере:

Код: Выделить всё

final var ARABIC_GREGORIAN_DATE_FORMATTER = DateTimeFormatter.ofPattern("EEEE dd\\MM\\yyyy G").localizedBy(Locale.forLanguageTag("ar"));
final var ENGLISH_GREGORIAN_DATE_FORMATTER = DateTimeFormatter.ofPattern("EEEE dd/MM/yyyy G").localizedBy(Locale.ENGLISH);

var now = Instant.now();
String arabicGregorianDate = ARABIC_GREGORIAN_DATE_FORMATTER.format(now.atZone(ZoneId.systemDefault()));
String englishGregorianDate = ENGLISH_GREGORIAN_DATE_FORMATTER.format(now.atZone(ZoneId.systemDefault()));

Log.info("arabicGregorianDate = " + arabicGregorianDate);
Log.info("englishGregorianDate = " + englishGregorianDate);
При работе в режиме JVM я получаю следующий результат:

Код: Выделить всё

arabicGregorianDate = السبت 18\10\2025 م
englishGregorianDate = Saturday 18/10/2025 AD
Однако, когда я компилирую его в собственный образ GraalVM и запускаю, я получаю следующий результат:

Код: Выделить всё

arabicGregorianDate = Sat 18\10\2025 CE
englishGregorianDate = Saturday 18/10/2025 AD
Обратите внимание, что арабское слово, обозначающее субботу, السبت заменено на Sat, а م — на CE?
Я предполагаю, что некоторые данные (CLDR?) отсутствуют в собственном изображении и для включения этих данных необходимы некоторые настройки. Как это сделать? Попробовал агент трассировки GraalVM, но это не решило проблему.
Я также использую -H:IncludeLocales=ar,en.
Воспроизводитель: https://github.com/Eng-Fouad/graal-native-date-locale

Подробнее здесь: https://stackoverflow.com/questions/797 ... -time-data
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»