
Bootique is a minimally opinionated
java launcher and integration technology. It is intended for building container-less runnable Java applications.
With Bootique you can create REST services, webapps, jobs, DB migration tasks, etc. and run them as if they were
simple commands. No JavaEE container required! Among other things Bootique is an ideal platform for
Java microservices, as it allows you to create a fully functional app with minimal setup.
Each Bootique app is a collection of modules interacting with each other via dependency injection. This GitHub project
provides Bootique core. Bootique team also develops a number of important modules. A full list is available
here.
Quick Links
Support
You have two options:
- Open an issue on GitHub with a label of "help wanted" or "question"
(or "bug" if you think you found a bug).
- Post a question on the Bootique forum.
TL;DR
For the impatient, here is how to get started with Bootique:
- Declare the official module collection:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>io.bootique.bom</groupId>
<artifactId>bootique-bom</artifactId>
<version>3.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
- Include the modules that you need:
<dependencies>
<dependency>
<groupId>io.bootique.jersey</groupId>
<artifactId>bootique-jersey</artifactId>
</dependency>
<dependency>
<groupId>io.bootique.logback</groupId>
<artifactId>bootique-logback</artifactId>
</dependency>
</dependencies>
package com.foo;
import io.bootique.Bootique;
public class Application {
public static void main(String[] args) {
Bootique
.app(args)
.autoLoadModules()
.exec()
.exit();
}
}
It has main() method, so you can run it!
For a more detailed tutorial proceed to this link.
Upgrading
See the "maven-central" badge above for the current production version of bootique-bom.
When upgrading, don't forget to check upgrade notes
specific to your version.