Wildfly Swarm — это легкий контейнер для развертывания приложений и сервисов с использованием различных спецификаций JEE. Он поддерживает полный жизненный цикл проекта с помощью собственного управления зависимостями Maven и создает плагин.
Для первоначальной разработки мы используем микросервисное стартовое приложение на основе JAX-RS, подобное реализации с [out] Spring Boot .
Вам также может понравиться: Создание микросервисов с использованием Spring Boot и Docker — Часть 1
Подробнее о жизненном цикле объясняется ниже.
упаковка
Wildfly Swarm предоставляет собственную поддержку Maven для упаковки кода и его зависимостей в виде Uber-файла, включая сам контейнер. Для этого вам нужно добавить следующий плагин сборки.
Простой текст
1
<build>
2
<plugins>
3
<plugin>
4
<groupId>org.wildfly.swarm</groupId>
5
<artifactId>wildfly-swarm-plugin</artifactId>
6
<version>2018.3.3</version>
7
<executions>
8
<execution>
9
<goals><goal>package</goal></goals>
10
</execution>
11
</executions>
12
</plugin>
13
</plugins>
14
</build>
развертывание
Wildfly Swarm — это встраиваемый контейнер, который обеспечивает поддержку нескольких вариантов развертывания. Он может развертывать веб-контейнеры, контейнеры JAXRS и EJB. Вы можете добавить определенную фракцию для развертывания только необходимого контейнера.
Простой текст
xxxxxxxxxx
1
<dependency>
2
<groupId>org.wildfly.swarm</groupId>
3
<artifactId>jaxrs</artifactId>
<version>2018.3.3</version>
</dependency>
Launcher
A Wildfly Swarm container can be launched using the standard as well as customer launchers.
Standard — Just run the following Maven goal on the project.
xxxxxxxxxx
mvn wildfly-swarm:run
Custom — Add an Application class to programmatically invoke and deploy containers.
xxxxxxxxxx
Swarm swarm = new Swarm();
swarm.start();
JAXRSArchive deployment = ShrinkWrap.create(JAXRSArchive.class);
deployment.addClass(HelloWorldResource.class);
swarm.deploy(deployment);
Here we are using the ShrinkWrap API to programmatically create a deployable archive at runtime.
The complete example can found here at microservice-starter-wildflyswarm.
Further Reading
Migrate Standalone HornetQ Configuration to ActiveMQ Cluster