This project uses Quarkus, the Supersonic Subatomic Java Framework.
If you want to learn more about Quarkus, please visit its website: https://quarkus.io/ .
This project reads its credentials from environment variables (no secret is hardcoded in application.properties). Set the following before running:
| Variable | Description | Default |
|---|---|---|
DB_USERNAME |
MySQL username | root |
DB_PASSWORD |
MySQL password | (required) |
DB_URL |
JDBC URL | jdbc:mysql://localhost:3306/proyectopg3 |
MAIL_HOST |
SMTP host | smtp.resend.com |
MAIL_PORT |
SMTP port | 465 |
MAIL_USERNAME |
SMTP username | resend |
MAIL_PASSWORD |
SMTP password / API key | (required) |
MAIL_FROM |
"From" address for outgoing mail | onboarding@resend.dev |
ADMIN_MAIL_RECIPIENT |
Address that receives the daily comments report | (required) |
REPORTS_OUTPUT_DIR |
Directory where the daily CSV report is written/read | . |
HTTP_PORT |
HTTP port | 8081 |
You can run your application in dev mode that enables live coding using:
./mvnw compile quarkus:devNOTE: Quarkus now ships with a Dev UI, which is available in dev mode only at http://localhost:8080/q/dev/.
The application can be packaged using:
./mvnw packageIt 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-jarThe application, packaged as an über-jar, is now runnable using java -jar target/*-runner.jar.
You can create a native executable using:
./mvnw package -DnativeOr, 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=trueYou can then execute your native executable with: ./target/api-quarkus-1.0.0-SNAPSHOT-runner
If you want to learn more about building native executables, please consult https://quarkus.io/guides/maven-tooling.
- REST Jackson (guide): Jackson serialization support for Quarkus REST. This extension is not compatible with the quarkus-resteasy extension, or any of the extensions that depend on it
- JDBC Driver - MySQL (guide): Connect to the MySQL database via JDBC
- Hibernate Validator (guide): Validate object properties (field, getter) and method parameters for your beans