Один проект Spring Boot, развертывание в JAR или WAR

Если файл не слишком большой, вы можете использовать base64 и использовать его как значение для скрытого поля.

23
задан imgx64 26 May 2014 в 10:59
поделиться

1 ответ

Недавно у нас было похожее требование, когда существующий проект на основе Spring Boot, который изначально был упакован как исполняемый Jar-файл, необходим для поддержки развертываний Tomcat и WildFly.

Из-за некоторых зависимостей, используемых в этом проекте (например, WebJars), простой переход на пакет WAR не был возможен, поскольку некоторые из этих зависимостей были необходимы для WildFly (поддержка VFS), но не для другого развертывания.

Решение состояло в том, чтобы реструктурировать модули проекта таким образом, чтобы модуль core содержал фактический проект, но без применения подключаемого модуля Spring Boot, тогда как несколько модулей пакета зависели бы от ] core и настройте особенности артефактов развертывания (загрузочные и другие плагины, специфичные для развертывания зависимости и т. д.).

Таким образом, сборка проекта могла генерировать несколько артефактов развертывания (исполняемый JAR-файл Boot, традиционная WAR и WAR для WildFly) за один запуск сборки.

В случае, если кто-то найдет это полезным, пример проекта для демонстрации подхода доступен на Github . Проект может быть построен либо Gradle, либо Maven.

5
ответ дан Vedran Pavic 26 May 2014 в 10:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: