Here is a maven archetype to initialize a lightweight Jakarta EE and Eclipse MicroProfile Maven Project.
The Maven archetype is deployed in Maven-Central. Source code can be found in the Git-repository at https://github.com/bitofcode/archetype-jakartaee-microprofile.
mvn archetype:generate -DarchetypeGroupId=com.bitofcode.archetype -DarchetypeArtifactId=jakartaee-microprofile -DarchetypeVersion=0.0.2
I have created an alias like this: newJeeProject='mvn archetype:generate -DarchetypeGroupId=com.bitofcode.archetype -DarchetypeArtifactId=jakartaee-microprofile -DarchetypeVersion=0.0.2 -DarchetypeCatalog=local -DinteractiveMode=true'
The command above generate a maven multi-module project containing the app and the system-tests
$ newJeeProject [INFO] Scanning for projects... [INFO] [INFO] ------------------< org.apache.maven:standalone-pom >------------------- [INFO] Building Maven Stub Project (No POM) 1 [INFO] --------------------------------[ pom ]--------------------------------- [INFO] [INFO] >>> maven-archetype-plugin:3.2.0:generate (default-cli) > generate-sources @ standalone-pom >>> [INFO] [INFO] <<< maven-archetype-plugin:3.2.0:generate (default-cli) < generate-sources @ standalone-pom <<< [INFO] [INFO] [INFO] --- maven-archetype-plugin:3.2.0:generate (default-cli) @ standalone-pom --- [INFO] Generating project in Interactive mode [INFO] Archetype repository not defined. Using the one from [com.bitofcode.archetype:jakartaee-microprofile:0.0.2] found in catalog local Define value for property 'groupId': com.techeule.blog Define value for property 'artifactId': blog Define value for property 'version' 1.0-SNAPSHOT: : Define value for property 'package' com.techeule.blog: : Confirm properties configuration: groupId: com.techeule.blog artifactId: blog version: 1.0-SNAPSHOT package: com.techeule.blog Y: : Y [INFO] ---------------------------------------------------------------------------- [INFO] Using following parameters for creating project from Archetype: jakartaee-microprofile:0.0.2 [INFO] ---------------------------------------------------------------------------- [INFO] Parameter: groupId, Value: com.techeule.blog [INFO] Parameter: artifactId, Value: blog [INFO] Parameter: version, Value: 1.0-SNAPSHOT [INFO] Parameter: package, Value: com.techeule.blog [INFO] Parameter: packageInPathFormat, Value: com/techeule/blog [INFO] Parameter: package, Value: com.techeule.blog [INFO] Parameter: groupId, Value: com.techeule.blog [INFO] Parameter: artifactId, Value: blog [INFO] Parameter: version, Value: 1.0-SNAPSHOT [INFO] Parent element not overwritten in /Users/wassim/junk/blog/blog-app/pom.xml [INFO] Parent element not overwritten in /Users/wassim/junk/blog/blog-st/pom.xml [INFO] Project created from Archetype in dir: /Users/wassim/junk/blog [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 23.192 s [INFO] Finished at: 2021-04-12T22:34:22+02:00 [INFO] ------------------------------------------------------------------------ cd blog && tree -L 3 . ├── blog-app │ ├── pom.xml │ └── src │ ├── main │ └── test ├── blog-st │ ├── pom.xml │ └── src │ └── test └── pom.xml