WildFly Bootable JAR 3.0.0.Beta1 is released!
The 3.0.0.Beta1 version of the WildFly bootable JAR Maven plugin has been released.
This release is not yet Final, it is "just a beta", but we think that it is of enough good quality to acquire feedback on it.
For people who are not familiar with WildFly bootable JAR, I strongly recommend that you read this blog post that covers it in details.
In addition to bug fixes, this release brings 2 new goals:
help: to display the plugin goals and configuration elements descriptions.
dev-watch: an evolution of the
devgoal that makes repackaging of your application no more required.
dev goal, although offering an efficient workflow to develop WildFly applications, requires an explicit repackaging of your application.
This is currently done in two steps:
that builds and starts the server in background. The deployment scanner monitors the
target/deploymentsdirectory for new deployed content.
mvn package -Ddev
that builds your application then copy the deployment to the
Update your src, re-call
mvn package -Ddev
When done call
that kills the running server (NB: requires the
managementlayer to be provisioned).
So each time a change is made to your application,
mvn package -Ddev must be called for the deployment to be re-deployed.
Furthermore, when the plugin configuration located in the pom.xml file is modified (e.g.: a new Galleon layer is added),
when a CLI script is updated or when some extra content is added, the running server must be killed and
wildfly-jar:dev must then be re-called.
This knowledge of when to re-build a bootable JAR, when to stop/re-start it, when to re-build your sources and when to re-deploy
is now under the control of the
The new workflow introduced by the goal is:
that builds your application (if needed), builds and starts the server, deploys your application and finally watches for file changes in your project.
Note that this call is blocking. The
dev-watchgoal and the server write traces to the console.
Update your files.
changes are detected. The goal advertises in the console what is the action it is taking (re-build, re-deploy, …).
Refresh your browser (if needed) to access the re-deployed application.
When done, send
Ctrl-Cin the shell.
Integration in IDE is straightforward. As an example I have created a Maven action named 'dev-watch' that calls
goal in NetBeans IDE. Once called, the goal traces are displayed in the IDE output windows. You can then forget
about the execution and start modifying your files in the IDE and refresh your web browser to visualize changes.
Plugin configuration changes
We have fixed the
extraServerContent configuration element to be
extraServerContentDirs. That was required to align
its name with the
extra-server-content-dirs alias. If you are already using
extra-server-content-dirs (that is the advised way),
then nothing change for you, if you are using
extraServerContent, you will have to update your pom file.
We hope that you are seeing the benefits of the new features that this release is bringing.
We would really appreciate your feedback on the
dev-watch goal. We aim toward a smooth and efficient
first class WildFly developer experience and we need you there!