Фрагменты в рыбе Нопфлерфиш
Мне действительно нужна помощь, у меня есть пакет, который в основном загружает правильный файл свойств локали, чтобы загрузить правильный язык.
Теперь эти файлы, FlashcardsMessages_es.properties,FlashcardsMessages_de.properties, находятся в отдельном пакете как фрагмент, но по некоторым причинам кажется, что мой пакет не находит фрагмент.
java.util.MissingResourceException: Can't find bundle for base name de.tud.cs.se.flashcards.ui.FlashcardsMessages, locale es_MX
at java.util.ResourceBundle.throwMissingResourceException(Unknown Source)
at java.util.ResourceBundle.getBundleImpl(Unknown Source)
at java.util.ResourceBundle.getBundle(Unknown Source)
at de.tud.cs.se.flashcards.ui.Messages.getMessage(Messages.java:65)
Это ошибка, которую я получил.
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: FlashCardOSGiED
Bundle-SymbolicName: FlashCardOSGiED
Bundle-Version: 1.0.0.qualifier
Bundle-Activator: Activator
Export-Package: .,
de.tud.cs.se.flashcards.model,
de.tud.cs.se.flashcards.model.learning,
de.tud.cs.se.flashcards.model.learning.basic,
de.tud.cs.se.flashcards.persistence,
de.tud.cs.se.flashcards.ui,
de.tud.cs.util
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Import-Package: javax.imageio,
javax.swing,
javax.swing.border,
javax.swing.event,
org.osgi.framework,
org.osgi.util.tracker
Это манифест моего пакета
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: LocaleFragment
Bundle-SymbolicName: LocaleFragment;singleton:=true
Bundle-Version: 1.0.0.qualifier
Fragment-Host: FlashCardOSGiED
Bundle-RequiredExecutionEnvironment: JavaSE-1.7
Export-Package: de.tud.cs.se.flashcards.ui
И это манифест моего фрагмента.
Если бы кто-то мог дать мне некоторое представление о том, что может быть не так, это было бы здорово.
РЕДАКТИРОВАТЬ: Я обнаружил проблему, поэтому eclipse или java не будут помещать любые ресурсы, такие как файлы свойств или файлы изображений, в jar при запуске компилятора, поэтому я решил поместить файлы свойств в папку "classes", а затем после компиляции eclipse правильно разместил файлы внутри jar-файлов. Я нашел это на каком-то другом веб-сайте, но некоторые из предложенных здесь советов вдохновили меня на поиск этого направления, поэтому большое спасибо.
1 ответ
Попробуйте обновить пакет хоста.
Если фрагмент был присоединен к хосту, возможно, это то, как вы упаковали ресурс внутри пакета фрагментов, или как вы указали путь к ресурсу в вашем коде хоста.