11

国際化のために GNU gettext を使用して大規模な Java アプリケーションを開発した経験のある人はいますか? 私は自分のソース コードに英語のテキストを含めるのが本当に好きだとわかっていますが、私が行っていることが、私が参加している比較的大規模なソフトウェア プロジェクトにとって実用的であることを確認したいと考えています。

この経験がある場合、Java でリソースを検索するために何を使用していますか? 私は現在 Gettext Commons ( http://code.google.com/p/gettext-commons/ ) を試していますが、これは今のところうまく機能しているようです。

ソースコードに元のテキストを保持する gettext の代替手段はありますか? Windows でサポートされている同様のツールがあればすばらしいでしょう。

4

2 に答える 2

8

JSOMオープン ソース OpenStreetMap Java エディター プロジェクトは、Gettext ライブラリを使用してすべての翻訳を処理しており、さまざまな翻訳ツール (KBabel、poedit、launchpad など) を使用して作業できるため、非常にうまく機能しています。 po ファイルなので、プラットフォームの制約はありません。また、言及されたセットアップがどのプラットフォームでも使用できないと考える理由がよくわかりません-Windowsでは確かにgettextを使用できます参照:こちらまたはこちら

gettext がどれほど人気が​​あるかを考えると、私は確かにそれをお勧めします。

于 2009-06-29T19:32:28.223 に答える
4

代わりに、単純な古い Java メッセージ リソース バンドルを使用できます。

編集: 開発チームで実際に使用しているのは、XML ファイルでローカライズ文字列を指定できる標準のTMX 形式です。これは、翻訳ツールで一般的に使用される形式です。これは、これらのファイルをより簡単に編集できる無料のものです。

それにもかかわらず、XML 処理ツールのおかげでエンコーディング処理が向上することを除いて、メッセージ リソース バンドルに勝る実際の利点や機能を提供しないため、これまで言及していませんでした (異なる言語で国際化されたリテラルを処理する場合、エンコーディングは首の痛みになる可能性があります)。英語に)。

さらに、私たちが実際に使用しているのは、この XML 形式を解析し、アプリケーションを再起動せずに (HTML ページまたは Swing フレームで) 言語を変更できる独自のフレームワークであるソフトウェアです。このようにリテラル翻訳を処理する単純なライブラリを開発することはそれほど難しくありませんが、欠点はそれを実装しなければならないことです。

于 2009-02-23T21:41:50.510 に答える