Локаль по умолчанию сообщается неверно из-за нестандартной установки Java - PullRequest
4 голосов
/ 06 августа 2020

При использовании установленной версии JDK языковой стандарт по умолчанию отображается правильно, но когда я использую adoptopenjdk-11 tar.gz, он всегда отображается как en_US

import java.util.Locale;

public class CurrentLocale {
    public static void main(String... args) {
        System.out.println("Default locale " + Locale.getDefault());
    }
}

Здесь - это пример установки Homebrew adoptopenjdk11 по сравнению с загруженным и извлеченным.

/usr/bin/java CurrentLocale
Default locale ja_JP

~/Downloads/jdk-11.0.8+10/Contents/Home/bin/java CurrentLocale
Default locale en_US

Здесь показаны версии каждого JDK.

# adoptopenjdk-11 (brew cask install adoptopenjdk11)

/usr/bin/java -version
openjdk version "11.0.8" 2020-07-14
OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.8+10)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.8+10, mixed mode)

# adoptopenjdk-11 (Downloaded from https://adoptopenjdk.net/releases.html?variant=openjdk11&jvmVariant=openj9)

~/Downloads/jdk-11.0.8+10/Contents/Home/bin/java -version
openjdk version "11.0.8" 2020-07-14
OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.8+10)
Eclipse OpenJ9 VM AdoptOpenJDK (build openj9-0.21.0, JRE 11 Mac OS X amd64-64-Bit Compressed References 20200715_677 (JIT enabled, AOT enabled)
OpenJ9   - 34cf4c075
OMR      - 113e54219
JCL      - 95bb504fbb based on jdk-11.0.8+10)

Я предполагаю macOS делает некоторые magi c, потому что двоичный файл Java, символически связанный с /usr/bin/java, всегда присутствует, независимо от того, установлен ли Java.

/usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

Hotspot (Oracle ) работает нормально, но версия openj9 (IBM) не работает.

Мне нужно связать JRE в установщике с приложением и установить его в нестандартное место.

Как я могу получить локаль по умолчанию в загруженном tar openj9, чтобы отразить текущую локаль системы?

1 Ответ

1 голос
/ 18 августа 2020

Я думаю, это может быть связано с https://github.com/eclipse/openj9/issues/5705

...