Technologies¶
AppJars is built on a focused, widely adopted technology stack chosen for longevity and compatibility with modern enterprise Java development.
Java¶
AppJars targets a modern Java LTS release, so it fits naturally into current enterprise Java projects. Applications running on a newer LTS release are fully compatible.
Spring Boot¶
Spring Boot provides the foundation for dependency injection, configuration, and application lifecycle management. Each module registers itself automatically, so integration requires minimal setup in the host application.
Jakarta Persistence and Hibernate¶
Jakarta Persistence (JPA) with Hibernate handles data access. AppJars are tested against PostgreSQL, MySQL, and H2, and work with other Hibernate-supported databases. The choice of database is left to the host application.
Vaadin¶
Vaadin provides the user interface layer. Its server-side Java model means the interface is written in the same language as the rest of the application, with no separate JavaScript or REST layer required, which makes the screens straightforward to extend and to embed within an existing application.
Maven¶
Apache Maven is used to build and package the modules. The artifacts are standard JARs, so each module is added to an application by declaring its dependency coordinates, the same way as any other Java library, and integrates cleanly into both Maven and Gradle builds.
