mxmlcのロケール設定
JavaアプリのロケールはLANGでもないし、当然C_LOCALEでもない。
システムプロパティという環境変数に似た構造を使って、独自で管理してる。そこで、起動時に指定されているVMへの引数をごにょごにょしてシステムプロパティを設定してやる。
*** mxmlc.orig 2006-08-23 23:19:55.000000000 +0900 --- mxmlc 2006-08-25 21:13:19.000000000 +0900 *************** *** 29,34 **** fi ! VMARGS="-Dapplication.home=$FLEX_HOME -Xmx384m -Dsun.io.useCanonCaches=false" java $VMARGS -jar $FLEX_HOME/lib/mxmlc.jar $* --- 29,34 ---- fi ! VMARGS="-Dapplication.home=$FLEX_HOME -Xmx384m -Dsun.io.useCanonCaches=false -Duser.region=us -Duser.language=en" java $VMARGS -jar $FLEX_HOME/lib/mxmlc.jar $*
おまけ。現在のロケールを表示するサンプルプログラム。
// LocaleTest.java
import java.util.Locale;
class LocaleTest{
public static void main(String[] args){
Locale def = Locale.getDefault();
System.out.println(def.getLanguage());
System.out.println(def.getCountry());
}
}