Я разработал приложение GWT с помощью i18n интернационализацию. В режиме Host/Dev это хорошо работает, но запускающий компиляцию GWT дает эту ошибку: Никакой ресурс, найденный для ключа xxx, как ниже.
Compiling module ...rte.RTE
Scanning for additional dependencies: file:/home/.../client/i18n/RTEValidationMessages.java
Computing all possible rebind results for '...client.i18n.RTEMessages'
Rebinding ...client.i18n.RTEMessages
Invoking com.google.gwt.dev.javac.StandardGeneratorContext@e7dfd0
Processing interface ...client.i18n.RTEMessages
Generating method body for txtIndirizzo3()
[ERROR] No resource found for key 'txtIndirizzo3'
Сообщения загружаются поздним связыванием.
public class RTEValidationMessages {
private RTEMessages additionalMessages;
public RTEValidationMessages() {
additionalMessages = GWT.create(RTEMessages.class);
}
}
Удаление метода, который дает ошибку, приводит к другому случайному методу с ошибкой, скажите не метод прежде или после в интерфейсе... клиент i18n. RTEMessages.
Справка значительно ценится.
Однажды у меня была похожая ошибка при использовании интернационализации. У меня были файлы свойств для английского и польского языков: labels_en.properties
and labels_pl.properties
. Решением было создать также файл labels.properties
(в моем случае это была просто копия labels_en.properties
). Это странно, но каким-то образом это помогло.
Вы также должны держать файлы свойств в том же пакете, что и класс RTEMessages
.