> Markdown version of [Spring Boot](https://vaadin.com/docs/v24/hilla/lit/guides/production/spring-boot). Section index: [llms.txt](https://vaadin.com/docs/v24/hilla/llms.txt)

# Deploying Spring Boot-Based Applications

[Spring Boot](https://spring.io/projects/spring-boot) applications are slightly different from tradition Java web applications (or Jakarta EE applications) in that they create by default a `JAR` file with an embedded server in it, rather than a traditional `WAR` file that’s deployed to a standalone Servlet container or fully featured Java EE server.

Alternatively, Spring Boot applications can be packaged as `WAR` files, too. See the [Spring Boot documentation](https://docs.spring.io/spring-boot/how-to/deployment/traditional-deployment.html#howto.traditional-deployment.war) for instructions on how to do this.

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

- `JAR` packaging don’t need a server binary installed: a Java Runtime is all that’s needed. However, it has a larger package size.

- `WAR` packaging is smaller, but needs a separate Java Servlet container. It has a free choice of servers, including Jetty, Tomcat, WildFly, GlassFish, and others.

You can read more about Spring applications and how to deploy them on the [official Spring website](https://spring.io/).
