Application Server vs UberJAR
Blog post from Octopus Deploy
Java web application deployment has evolved from using traditional Java EE application servers like WildFly, which host multiple applications and provide management tools, to using self-contained UberJARs, which bundle all necessary classes and resources into a single executable JAR file. This shift is influenced by modern paradigms such as microservices and Platform as a Service (PaaS), where UberJARs offer ease of distribution and scalability, requiring only a Java Runtime Environment (JRE) to run. WildFly Swarm facilitates this transition by allowing Java EE applications to be packaged as UberJARs, combining the benefits of application servers with the flexibility of standalone executables. While application servers offer centralized management and shared resources, UberJARs move infrastructure management to build tools and are favored in environments prioritizing agility and simplicity.