Сгенерируйте SQL-схему и скопируйте ее в WAR-файл: проблема с зависимостями плагинов

Перед запуском интеграционных тестов мне нужно настроить базу данных. Это включает в себя создание SQL-схемы (на основе JPA-аннотаций), сохранение ее в файл и копирование ее с другими ресурсами в каталог, который в дальнейшем будет использоваться для создания файла войны (который будет развернут в Jetty).

Итак, я использую следующие hibernate3-maven-plugin Конфигурация для генерации SQL-схемы: http://pastebin.ubuntu.com/606229/

Скопировать полученный hsql-scheme.sql от src/env/test/WEB-INF/classes в target/ где он будет упакован в WAR-файл, я использую следующее: http://pastebin.ubuntu.com/606230/

Но когда я бегу mvn verify -P test (да, весь этот код внутри отдельного профиля) У меня есть: http://pastebin.ubuntu.com/606231/

Как вы видете hibernate3:hbm2ddl не генерирует никакой SQL-схемы, и полученный файл пуст (в противном случае мы также увидим его на консоли). И это проблема.

Корень проблемы (как я понимаю) заключается в том, что hibernate3:hbm2ddl invokes the execution of the lifecycle phase process-resources prior to executing itself,

Заранее спасибо!

1 ответ

Решение

Этот вопрос помог мне исправить создание схемы:

  • вызов hibernate3:hbm2ddl в prepare-package фаза вместо generate-resources

  • положить результат hibernate3:hbm2ddl прямо к target/${build.finalName}/WEB-INF/classes

Итак, теперь у меня еще есть hibernate3:hbm2ddl invokes the execution of the lifecycle phase process-resources prior to executing itself предупреждение, но файл target/${build.finalName}/WEB-INF/classes/hsql-scheme.sql не пустой, как раньше.

Другие вопросы по тегам