Lorsque j'utilise les paramètres régionaux par défaut Java sur ma machine Linux, il sort avec les paramètres régionaux américains, où dois-je changer cela pour qu'il ressorte avec les paramètres régionaux corrects?
Je crois que Java glane cela à partir des variables d'environnement dans lesquelles il a été lancé, vous devrez donc vous assurer que vos variables d'environnement LANG et LC_ * sont définies correctement.
La locale manpage a toutes les informations sur les variables d'environnement.
Avec le user.language
, user.country
et user.variant
Propriétés.
Exemple:
Java -Duser.language=th -Duser.country=TH -Duser.variant=TH SomeClass
J'ai dû contrôler cela dans un script qui s'exécutait sur une machine avec des paramètres régionaux français, mais un programme spécifique Java devait s'exécuter avec en_US. Comme déjà souligné, les travaux suivants:
Java -Duser.language=en -Duser.country=US ...
Alternativement,
LC_ALL=en_US.UTF-8 Java ...
Je préfère ce dernier.
Vous pouvez appeler pendant init ou autre chose Locale.setDefault () ou -Duser.language =, -Duser.country = et -Duser.variant = sur la ligne de commande. Voici quelque chose sur le site de Sun .
Pour des outils comme jarsigner
qui est implémenté en Java.
Java_TOOL_OPTIONS=-Duser.language=en jarsigner
Vous pouvez changer sur la console:
$ export LANG=en_US.utf8
Si vous souhaitez vérifier quels paramètres régionaux ou jeu de caractères Java utilise, cela est intégré à la JVM:
Java -XshowSettings -version
et il déchargera des charges des paramètres qu'il utilise. De cette façon, vous pouvez vérifier vos LANG
et LC_*
les valeurs sont correctement récupérées.
Si vous êtes sur Mac, il vous suffit d'utiliser les Préférences Système -> Langues et de faire glisser la langue pour tester vers le haut (avant l'anglais) pour vous assurer que la prochaine fois que vous ouvrirez l'application, le bon environnement local sera essayé !!
Sous linux, créez un fichier dans /etc/default/locale
avec le contenu suivant
LANG=en.utf8
puis utilisez la commande source
pour exporter cette variable en exécutant
source /etc/default/locale
La commande source définit la variable de façon permanente.
Une façon de contrôler les paramètres régionaux consiste à définir les propriétés système Java Java.usager et user.region).