デプロイ不要?! WildFly でも bootable jar が作れるようになったらしい

ワイが勝手に JavaEE(JakartaEE) 勢のフラッグシップと思い込んでいる WildFly であるが、ちょっと前に 26 がリリースされた。

最近、あまりチェックしていなかったのだが、bootable jar が作成できるようになったらしい。

軽めのドキュメントも公開されていた。

ほんまかいな?とサンプルを試してみる。

HelloWorldEndpoint.java
package org.wildfly.plugins.demo.jaxrs;


import javax.ws.rs.Path;
import javax.ws.rs.core.Response;
import javax.ws.rs.GET;
import javax.ws.rs.Produces;


@Path("/hello")
public class HelloWorldEndpoint {
    @GET
    @Produces("text/plain")
    public Response doGet() {
        return Response.ok("Hello from WildFly bootable jar!").build();
    }
}


としたとき、pom.xml を以下のように設定する。

pom.xml(抜粋)

   <artifactId>jaxrs</artifactId>
   (略)
   <build>
        <finalName>${project.artifactId}</finalName>
        <plugins>
            <plugin>
                <groupId>org.wildfly.plugins</groupId>
                <artifactId>wildfly-jar-maven-plugin</artifactId>
                <configuration>
                    <feature-pack-location>wildfly@maven(org.jboss.universe:community-universe)#${version.wildfly}</feature-pack-location>
                    <layers>
                        <layer>jaxrs</layer>
                        <layer>management</layer>
                    </layers>
                    <excluded-layers>
                        <layer>deployment-scanner</layer>
                    </excluded-layers>
                    <plugin-options>
                        <jboss-fork-embedded>${plugin.fork.embedded}</jboss-fork-embedded>
                    </plugin-options>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>package</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
mvn pacakge

でビルド。

完了したら、

java -jar target/jaxrs-bootable.jar

とタイプ。

すると

といういかにも WildFly なロガー情報が流れる。

ブラウザで http:127.0.0.1:8080/hello アクセスすると

とちゃんと表示されました。

wildfly-jar-maven-plugin やるではないですかーw

 

 

クリックclose

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です