Hibernate IllegalArgumentException persistence.xml не существует - модульное тестирование без persistence.xml
Я использую OpenEJB в некоторых модульных (интеграционных) тестах для моего модуля базы данных, следуя этому примеру здесь: http://tomee.apache.org/examples-trunk/application-composer/README.html
Я использую аннотацию @Module для предоставления Java-объекта PersistenceUnit, а не файла "test" persistence.xml, и я переопределяю провайдера для использования hibernate (по определенным причинам), как показано ниже.
unit.setProvider(org.hibernate.jpa.HibernatePersistenceProvider.class);
Используя версию 4.2.11. Окончательная версия Hibernate работает нормально, но при обновлении до 4.3.8. Наконец, я получаю исключение IllegalArgumentException, в котором говорится, что файл persistence.xml не существует.
Caused by: java.lang.IllegalArgumentException: File [FullParthToMyJar.jar:file:FullParthToMyJar.jar!/META-INF/persistence.xml] referenced by given URL [file:FullParthToMyJar/jar:file:FullParthToMyJar.jar!/META-INF/persistence.xml] does not exist
В любом случае, чтобы остановить это сканирование, так как мой плагин Project Maven Enforcer заставляет меня использовать более позднюю версию.
Благодарю.
1 ответ
Спасибо за ваш ответ, но в итоге мы использовали файл persistence.xml, чтобы избежать потери времени, что решило проблему.