View on GitHub


A base maven archetype based on kukulkan-ee reference project

Maven Central


Kukulkan EE is an opinionated bootstrap archetype for JavaEE/JakartaEE 8.0 and Microprofile 3 family.

The principal motivator behind this is time. Despite being the foundation of Enterprise Java ecosystem, bootstrapping CDI projects is a time consuming and sometimes redundant task.

Hence Kukulkan EE was created with the following principles:

Kukulkan integrates the following dependencies:

This is a work in progress.

Why Kukulkan?

In the Mayan mithology Kukulkan is one of the deities that created (hence bootstrapped) the universe.

Also as an internal joke, this project is a maintained/useful project for a Guatemalan company and people in Guatemala tend to overuse Mayan terms.

Specification examples

By default, Kukulkan includes a JAX-RS application starter class to define the path for endpoints.

Also, a simple Hello world endpoint is created, have a look HelloController class.

Pristine project

This archetype is based on kukulkan-ee project which maintains a base project to execute CI and ensure archetype health.

How to use this archetype

To generate a Docker/JakartaEE/MicroProfile base project, you could invoke this archetype:

mvn archetype:generate -DarchetypeGroupId=com.nabenik -DarchetypeArtifactId=kukulkan-ee-archetype -DarchetypeVersion=0.0.1 -DgroupId=<yourgroupid> -DartifactId=<yourartifactid> -Dversion=<yourversion>

This will generate a base Java project with all libraries activated and persistence on H2 database (default provider in Payara).

After that any Java IDE will suffice to develop your next microservice with Java.