O Gradle é uma ferramenta de automação de criação de código aberto focada em flexibilidade e desempenho. O App Engine fornece um plug-in do Gradle para criar e implantar o aplicativo nessa plataforma. Os exemplos de código neste guia usam o Gradle versão 8.
O exemplo de código demonstra como configurar o arquivobuild.gradle
para adicionar tarefas do Gradle do App Engine, repositórios Maven, o plug-in do Gradle do App Engine e dependências para Java 8.
Para o Java versão 11 e mais recentes, consulte Ambiente de execução do Java
para mais informações sobre como usar versões mais recentes.
Antes de começar
Se ainda não tiver feito isso, siga as etapas neste guia para fazer o download da CLI gcloud, criar seu projeto do Google Cloud e inicializar seu aplicativo do App Engine.
Instale o componente
app-engine-java
da CLI gcloud:gcloud components install app-engine-java
Crie um novo projeto do Gradle
É possível criar um novo projeto do Gradle do zero usando o shell. Como alternativa, para testar o plug-in, é possível fazer o download, executar localmente e implantar o projeto "Hello, World".
Para criar um novo projeto:
Crie um novo diretório e navegue até ele.
Para inicializar um novo projeto:
Execute
gradle init
:gradle init --type java-application
Você vai precisar responder a perguntas:
- Insira a versão do Java de destino (mínima: 7, padrão: 21): 21
- Selecione a estrutura do aplicativo: 1 para projeto de aplicativo único
- Selecione a DSL do script de build: 2 (para Groovy)
- Selecione a estrutura de teste: 1 (para o JUnit 4)
- Gerar build usando novas APIs e comportamento: não
Crie a pasta
WEB-INF
:mkdir -p app/src/main/webapp/WEB-INF
Crie a pasta
appengine
:mkdir -p app/src/main/appengine
Remova os arquivos de stub gerados por
gradle init
:rm ./app/src/main/java/org/example/App.java ./app/src/test/java/org/example/AppTest.java
Adicione os seguintes elementos ao seu arquivo
app/build.gradle
para adicionar tarefas do Gradle do App Engine, repositórios Maven, o plug-in do Gradle do App Engine, dependências e a configuração de tarefas:Você também precisa adicionar ao projeto os arquivos abaixo, usando um editor de texto ou um ambiente de desenvolvimento integrado (IDE, na sigla em inglês):
app/src/main/appengine/app.yaml
app/src/main/webapp/WEB-INF/web.xml
(a menos que o app use anotações do Servlet 3.1)- app/src/main/docker/Dockerfile (opcional para tempos de execução personalizados)
- Classes Java
- classes de teste Java
Consulte Configurar o ambiente de desenvolvimento para ter uma visão geral de um projeto Java do App Engine.
faça o download do app Hello World
Clone o repositório do app de amostra Hello World na máquina local:
git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git
Também é possível fazer o download da amostra como um arquivo zip e extraí-lo.
Acesse o diretório que contém o código de amostra:
cd java-docs-samples/flexible/java-8/helloworld
Como testar o aplicativo com o servidor de desenvolvimento
Em seu projeto, para acessar os recursos do Google durante a execução local, configure as credenciais padrão do aplicativo executando:
gcloud auth application-default login
Mude para a raiz do diretório do aplicativo.
Durante a fase de desenvolvimento, é possível executar e testar o aplicativo a qualquer momento no servidor de desenvolvimento invocando o Gradle:
gradle jettyRun
Você também pode executar o Gradle sem instalá-lo, basta usar o wrapper do Gradle.
Aguarde a inicialização do servidor. O servidor é iniciado com o aplicativo em execução, quando você vê uma mensagem semelhante a esta:
:prepareInplaceWebAppFolder :createInplaceWebAppFolder :compileJava :processResources UP-TO-DATE :classes :prepareInplaceWebAppClasses :prepareInplaceWebApp :jettyRun 17:40:05 INFO Jetty 9.2.15.v20160210 started and listening on port 8080 17:40:05 INFO runs at: 17:40:05 INFO http://localhost:8080/
Veja o app em execução em
http://localhost:8080
.
Para saber mais sobre o plug-in do Gretty, consulte as configuração do Gretty e as tarefas do Gretty.
Implantar aplicativo
Para implantar o aplicativo:
gradle appengineDeploy
A tarefa appengineDeploy
e todas as outras tarefas do Gradle têm propriedades associadas
que podem ser usadas. Para uma lista completa de tarefas e propriedades, consulte as
tarefas e propriedades do Gradle do App Engine.
Usar o wrapper do Gradle
O Gradle oferece um mecanismo para download e execução da versão obrigatória dele sem instalação:
Linux/macOS
Mude para o diretório do código de amostra.
Execute gradlew:
./gradlew jettyRun
Windows
Mude para o diretório do código de amostra.
Execute gradlew:
./gradlew.bat jettyRun
Informações extras sobre o Gradle podem ser encontradas em tarefas e propriedades do Gradle do App Engine.
A seguir
- Confira o código do plug-in e relate problemas no GitHub.
- Para saber como especificar propriedades de tarefas, consulte tarefas e propriedades do Gradle do App Engine.