Este projeto usa Quarkus, o Supersonic Subatomic Java Framework.
Se você quiser saber mais sobre o Quarkus, visite o site: https://quarkus.io/ .
Você pode executar este aplicativo no modo dev que permite a codificação ao vivo usando:
cd api/
./mvnw compile quarkus:dev
cd authorization/
./mnvw compile quarkus:dev -Ddebug=5006
utilizando linux, só seguir estes passos:
no diretório app-entrega/
sudo chmod +x generatejwtKeys.sh (para dar permissão de execução ao arquivo)
./generatejwtKeys.sh (executar arquivo para gerar chaves de seguraça para o token jwt)
utilizando windows, gerar manualmente as chaves:
https://quarkus.io/guides/security-jwt
Indicação de fluxo para verificação de todo funcionando da aplicação:
- Acessar a documentação do serviço de autenticação http://localhost:8082/doc/swagger
- criar um usuário com a role "ADMIN";
- efetuar login com as credênciais do mesmo;
- copiar o token JWT
- Acessar a documentação da API de gerenciamento de entregas http://localhost:8081/doc/swagger
- na sessão "Authorize" passar token gerado pelo sistema de autenticação
- testar todas funcionalidades da API
O aplicativo pode ser empacotado usando:
./mvnw package
Ele produz o arquivo quarkus-run.jar
no diretório target/quarkus-app/
.
Esteja ciente de que não é um über-jar pois as dependências são copiadas para o diretório target/quarkus-app/lib/
.
O aplicativo agora pode ser executado usando java -jar target/quarkus-app/quarkus-run.jar
.
Se você deseja construir um über-jar, execute o seguinte comando:
./mvnw package -Dquarkus.package.type=uber-jar
O aplicativo, empacotado como um über-jar, agora pode ser executado usando java -jar target/*-runner.jar
.
Você pode criar um executável nativo usando:
./mvnw package -Pnative
Ou, se você não tiver o GraalVM instalado, pode executar o build executável nativo em um contêiner usando:
./mvnw package -Pnative -Dquarkus.native.container-build=true
Você pode então executar seu executável nativo com: ./target/app-entregas-1.0.0-SNAPSHOT-runner
Se você quiser saber mais sobre a criação de executáveis nativos, consulte https://quarkus.io/guides/maven-tooling.
Easily start your Reactive RESTful Web Services