Documentation versions (currently viewingVaadin 24)

Deploying Spring Boot-Based Applications

How to deploy a Spring Boot based application.

Spring Boot applications are slightly different from tradition Java web applications (or Jakarta EE applications) in that, by default, they create a JAR file with an embedded server, rather than a traditional WAR file that’s deployed on a standalone Servlet container or fully featured Java EE server.

Alternatively, Spring Boot applications can be packaged as WAR files, too. Follow the instructions in Spring Boot documentation on how to do this.

The main differences between JAR and WAR packaging are as follows:

JAR packaging:

  • there is no need for a server binary install; a Java runtime is all that’s needed

  • bigger package size

WAR packaging:

  • a separate Java Servlet container is needed

  • you have a free choice of servers, including Jetty, Tomcat, WildFly, GlassFish, and others

  • smaller package size

See Using Spring Boot Properties for additional details.

You can read more about Spring applications and how to deploy them at the official Spring website.