This project uses Quarkus, the Supersonic Subatomic Java Framework.
If you want to learn more about Quarkus, please visit its website: https://quarkus.io/.
create docker-compose.yml file with content bellow
volumes:
postgres-data:
services:
db:
container_name: quarkusdev-postgresdb
image: postgres:latest
restart: unless-stopped
volumes:
- postgres-data:/var/lib/postgresql/data
environment:
# NOTE: POSTGRES_DB/USER/PASSWORD should match values in app container
POSTGRES_PASSWORD: 1234
POSTGRES_USER: user
POSTGRES_DB: app
run the docker composer file
docker-compose up
You can run your application in dev mode that enables live coding using:
./mvnw compile quarkus:dev
Swagger UI is available in dev mode at http://localhost:8080/swagger-ui/index.html
NOTE: Quarkus now ships with a Dev UI, which is available in dev mode only at http://localhost:8080/q/dev/.
NOTE: The deafult port is 8080 but can modify in application.properties
The application can be packaged using:
./mvnw package
It produces the quarkus-run.jar
file in the target/quarkus-app/
directory.
Be aware that it’s not an über-jar as the dependencies are copied into the target/quarkus-app/lib/
directory.
The application is now runnable using java -jar target/quarkus-app/quarkus-run.jar
.
If you want to build an über-jar, execute the following command:
./mvnw package -Dquarkus.package.jar.type=uber-jar
The application, packaged as an über-jar, is now runnable using java -jar target/*-runner.jar
.
You can create a native executable using:
./mvnw package -Dnative
Or, if you don't have GraalVM installed, you can run the native executable build in a container using:
./mvnw package -Dnative -Dquarkus.native.container-build=true
You can then execute your native executable with: ./target/my-delivery-registration-0.0.1-runner
If you want to learn more about building native executables, please consult https://quarkus.io/guides/maven-tooling.