Java の i18n 機能をテストしていますが、問題があります。言語ファイルがクラス ルートにないとロードできません。現在、私のファイルは/lang
ディレクトリにあります。
ここSOでいくつかの回答を見て、それをサブディレクトリに入れて、のclasses
ようにロードしlang.Messages
、完全なロケーションルーティングを使用しまし/Test/lang/Message
た(テストはプロジェクト名です)/lang/Message
。
java.util.MissingResourceException: Can't find bundle for base name
エラー。
他に試してみることはありますか?
私のファイル構造は次のとおりです。
Test/lang/Messages_es.properties
Test/src/test/Main.java
import java.util.Locale;
import java.util.ResourceBundle;
import javax.swing.JFrame;
public class Main {
public static void main(String[] args) {
Locale currentLocale;
ResourceBundle messages;
currentLocale = new Locale("es");
messages = ResourceBundle.getBundle("Messages", currentLocale);
System.out.println(messages.getString("Messagesgreetings"));
System.out.println(messages.getString("Messagesinquiry"));
System.out.println(messages.getString("Messagesfarewell"));
}
}