Я пробую пример "Изучение Java" о RersourceBundles.
Я использую Windows 7 и NetBeans
Код выборки:
import java.util.*;
public class Hello {
public static void main(String[] args) {
ResourceBundle bun;
bun = ResourceBundle.getBundle("Message", Locale.ITALY);
System.out.println(bun.getString("HelloMessage"));
bun = ResourceBundle.getBundle("Message", Locale.US);
System.out.println(bun.getString("HelloMessage"));
}
}
Если я запустил код, я получаю:
Исключение в потоке "main" java.util.MissingResourceException: Не удается найти пакет для базового имени Message, locale it_IT в java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1499) в java.util.ResourceBundle.getBundleImpl(ResourceBundle. java: 1322) at java.util.ResourceBundle.getBundle(ResourceBundle.java:795) в процессе обученияjava4.Hello.main(Hello.java:14) Java Результат: 1
Даже если я написал и сохранил
import java.util.*;
public class Message_it_IT extends ListResourceBundle {
public Object[][] getContents() {
return contents;
}
static final Object[][] contents = {
{"HelloMessage", "Buon giorno, world!"},
{"OtherMessage", "Ciao."},
};
}
У меня все еще была такая же ошибка. Файл Message_it_IT был сохранен в том же каталоге другого, что не так?
благодаря
Трассировка стека показывает, что класс находится в пакете learningjava4
. И вы говорите нам, что класс/файлы пакета находятся в одном пакете. Таким образом, базовое имя пакета - learningjava4.Message
, а не Message
.