В течение долгого времени я использовал класс с именем Anomaly , который использовался моими бизнес-объектами для возврата любой бизнес-ошибки или предупреждения, которые они обнаружили на себе, путем некоторой быстрой автоматической проверки. " Я - Город, в котором нет населения, нет плотности населения ... ".
Я разработал базовый класс в модуле maven, который из ключа параметра и некоторых аргументов, в конце концов, вызвал функцию getBundle, чтобы использовать ее результат и отправить предупреждение / сообщение об ошибке:
ResourceBundle.getBundle(businessObject.getClass(), Locale.getDefault(), businessObject.getClassLoader());
С тех пор, как появилась Java 10 (у меня не было Java 9), я сохранил этот модуль maven в модуле Java:
module A {
exports myPackageA;
}
И теперь у меня проблема: у меня есть класс бизнес-объектов в модуле B, который использует A в случае аномалии.
module B {
exports myPackageB;
requires myPackageA;
}
Но когда
ResourceBundle.getBundle(businessObject.getClass(), Locale.getDefault(), businessObject.getClassLoader());
теперь вызывается в модуле A, учитывая класс из модуля B, он не может найти ожидаемый пакет ресурсов. И это заканчивается MissingResourceException , и мои программы завершаются сбоем, как только я их компилирую, во время тестирования.
Как правильно делать вещи сейчас?
Большое спасибо!