Depois de adicionar o plug-in Maven do App Engine baseado na CLI gcloud ao seu projeto, os seguintes objetivos Maven específicos do App Engine estão disponíveis:
| Objetivo | Descrição | 
|---|---|
appengine:cloudSdkLogin | 
    Define o estado global da CLI gcloud para account. | 
appengine:deploy | 
    Prepara e implementa uma aplicação no App Engine. | 
appengine:deployAll | 
    Prepara e implementa uma aplicação com todas as respetivas configurações YAML válidas simultaneamente no App Engine. | 
appengine:deployCron | 
    Prepara e implementa um ficheiro de configuração cron.yaml no App Engine. | 
  
appengine:deployDispatch | 
    Prepara e implementa um ficheiro de configuração dispatch.yaml no App Engine. | 
  
appengine:deployDos | 
    Prepara e implementa um ficheiro de configuração dos.yaml no App Engine. | 
  
appengine:deployIndex | 
    Prepara e implementa um ficheiro de configuração index.yaml no App Engine. | 
  
appengine:deployQueue | 
    Prepara e implementa um ficheiro de configuração queue.yaml no App Engine. | 
  
appengine:help | 
    Apresenta informações de ajuda sobre o plug-in do Maven do App Engine. | 
appengine:run | 
    
      Executa o servidor de desenvolvimento do App Engine. Quando o servidor está em execução, verifica continuamente se appengine-web.xml foi alterado. Se tiver, o servidor recarrega a aplicação. Não tem de parar nem reiniciar a aplicação
      devido a alterações ao appengine-web.xml. Este objetivo é suportado para os serviços incluídos antigos.
     | 
  
appengine:stage | 
    Gera um diretório de aplicações para implementação. | 
appengine:start | 
    
      Inicia a execução do devserver do App Engine de forma assíncrona e, em seguida, volta à linha de comandos. Quando este objetivo é executado, o comportamento é o mesmo
      que o objetivo run, exceto que o Maven continua a processar objetivos
      e sai após o servidor estar em funcionamento. Este objetivo é suportado para os serviços incluídos antigos.
     | 
  
appengine:stop | 
    Para um servidor de programação Web do App Engine em execução. Este objetivo é suportado para os serviços incluídos antigos. | 
Para mais informações sobre como configurar e usar o Maven, consulte o artigo Usar o Maven.
Usar parâmetros
Cada objetivo tem parâmetros associados que pode especificar no ficheiro pom.xml.
Por exemplo:
<plugins>
   <plugin>
     <groupId>com.google.cloud.tools</groupId>
     <artifactId>appengine-maven-plugin</artifactId>
     <version>2.8.1</version>
     <configuration>
       <deploy.stopPreviousVersion>true</deploy.stopPreviousVersion>
       <cloudSdkHome>/usr/foo/path/to/cloudsdk</cloudSdkHome>
     </configuration>
  </plugin>
</plugins>Também pode definir parâmetros de configuração na linha de comandos, seguindo o padrão -D[USER_PROPERTY]=[PARAMETER_VALUE].
Por exemplo, para especificar um diretório para o qual preparar a sua aplicação:
mvn appengine:stage -Dapp.stage.stagingDirectory=[YOUR_STAGING_DIRECTORY]
Consulte as secções seguintes para ver uma lista dos parâmetros disponíveis para cada objetivo.
appengine:deploy
Prepara e implementa uma aplicação no App Engine.
Pode usar os seguintes parâmetros, alguns dos quais correspondem a gcloud app deploy sinalizadores de linha de comandos ou gcloud app services sinalizadores de linha de comandos:
| Parâmetro | Descrição | Propriedade do utilizador | 
|---|---|---|
appEngineDirectory | 
      O diretório que contém app.yaml e outros ficheiros de configuração do App Engine suportados. A predefinição é
          ${basedir}/src/main/appengine. | 
      app.stage.appEngineDirectory | 
    
artifact | 
      A localização do arquivo JAR ou WAR a implementar. A predefinição é
          ${project.build.directory}/${project.build.finalName}.${project.packaging}. | 
      app.stage.artifact | 
    
bucket | 
      O contentor do Cloud Storage usado para preparar ficheiros associados à implementação. Se este argumento não for especificado, é usado o contentor predefinido da aplicação. | app.deploy.bucket | 
    
cloudSdkPath | 
      Parâmetro opcional para configurar a localização da CLI gcloud. A predefinição é a deteção automática a partir do PATH ou da localização de instalação padrão. | cloudSdkPath | 
    
deployables | 
      Os ficheiros YAML dos serviços ou das configurações que quer implementar.
          A predefinição é o ficheiro app.yaml no diretório de preparação.
          Se não for encontrado, tenta gerar automaticamente os ficheiros de configuração necessários (como app.yaml) no diretório de preparação. | 
      app.deploy.deployables | 
    
dockerDirectory | 
      O diretório que contém o Dockerfile e outros recursos do Docker.
        A predefinição é
          ${basedir}/src/main/docker/. | 
      app.stage.dockerDirectory | 
    
imageUrl | 
      Implementar com uma imagem do Docker específica. ImageUrl tem de ser
        um nome do Artifact Registry válido, por exemplo, docker.pkg.dev/foo,
      em que foo é o nome da imagem. | 
      app.deploy.imageUrl | 
    
projectId | 
      O Google Cloud nome do projeto a usar para esta invocação.
          O valor predefinido é o projeto atual selecionado quando inicializa gcloud. | 
      app.deploy.projectId | 
    
promote | 
      Promova a versão implementada para receber todo o tráfego. A predefinição é
          True. | 
      app.deploy.promote | 
    
server | 
      O servidor do App Engine ao qual estabelecer ligação. Normalmente, não precisa de alterar este valor. | app.deploy.server | 
    
stagingDirectory | 
      Obrigatório. O diretório para o qual a aplicação deve ser preparada. A predefinição é
          ${project.build.directory}/appengine-staging. | 
      app.stage.stagingDirectory | 
    
stopPreviousVersion | 
      Pare a versão em execução anterior quando implementar uma nova versão que recebe todo o tráfego. | app.deploy.stopPreviousVersion | 
    
version | 
      A versão da app que vai ser criada ou substituída por esta implementação. Se não especificar uma versão, é gerada uma para si. | app.deploy.version | 
    
appengine:help
Apresenta informações de ajuda sobre o plug-in do Maven do App Engine. Para apresentar os detalhes dos parâmetros, chame:
mvn appengine:help -Ddetail=true -Dgoal=[GOAL_NAME]
Pode usar os seguintes parâmetros:
| Parâmetro | Descrição | Propriedade do utilizador | 
|---|---|---|
detail | 
    Se for verdadeiro, apresenta todas as propriedades definíveis para cada objetivo. A predefinição é
        False. | 
    detail | 
  
goal | 
    O nome do objetivo para o qual mostrar ajuda. Se não for especificado, todos os objetivos são apresentados. | goal | 
  
indentSize | 
    O número de espaços por nível de avanço. Deve ser um número positivo.
        A predefinição é 2. | 
    indentSize | 
  
lineLength | 
    O comprimento máximo de uma linha de visualização. Deve ser um número positivo.
        A predefinição é 80. | 
    lineLength | 
  
appengine:run
Executa o servidor Web de desenvolvimento do App Engine. Quando o servidor está em execução, verifica continuamente se appengine-web.xml mudou. Se tiver, o servidor recarrega a aplicação. Isto significa que não tem de parar e reiniciar a aplicação devido a alterações ao appengine-web.xml.
Pode usar os seguintes parâmetros, alguns dos quais correspondem às flags da linha de comandos do servidor de desenvolvimento local:
| Propriedade | Descrição | Configuração do plugin | Configuração da linha de comandos | 
|---|---|---|---|
automaticRestart | 
    
      Reiniciar instâncias automaticamente quando os ficheiros da aplicação Web (recursos ou ficheiros de classe) são alterados. Para configurar o Maven de modo a colocar os ficheiros de classe compilados no diretório correto da aplicação Web, tem de alterar a definição outputDirectory do Maven:
      <build> <outputDirectory> target/${project.artifactId}-${project.version}/WEB-INF/classes </outputDirectory> ... <plugins> ...  | 
    devserver.automaticRestart | 
    app.devserver.automaticRestart | 
  
environment | 
    
      Um mapa de variáveis de ambiente a enviar para o servidor de desenvolvimento local.
      Exemplo:
      <environment> <key1>value1</key1> <key2>value2</key2> </environment>  | 
    devserver.environment | 
    app.devserver.environment | 
  
jvmFlags | 
    
      Argumentos adicionais a transmitir ao comando java quando iniciar uma instância da app. Pode ser especificado mais do que uma vez. Exemplo:
      <jvmFlags> <jvmFlag>-Xmx1024m</jvmFlag> <jvmFlag>-Xms256m</jvmFlag> </jvmFlags>  | 
    devserver.jvmFlags | 
    app.devserver.jvmFlags | 
  
host | 
    
      Nome do anfitrião ao qual os serviços de aplicação devem ser associados. A predefinição é
      localhost.
     | 
    devserver.host | 
    app.devserver.host | 
  
port | 
    
      Porta mais baixa à qual os serviços de aplicação devem ser associados. A predefinição é
      8080.
     | 
    devserver.port | 
    app.devserver.port | 
  
serverVersion | 
    Versão do servidor a iniciar. As opções são "1" e "2-alpha". A predefinição é "1". | devserver.serverVersion | 
    app.devserver.serverVersion | 
  
services | 
    
      Obrigatório. Caminhos para um diretório que contém um diretório que contém
      WEB-INF/web.xml. A predefinição é build/exploded-app.
     | 
    devserver.services | 
    app.devserver.services | 
  
appengine:stage
Gera um diretório de compilação de aplicações para implementação.
Pode usar os seguintes parâmetros:
| Parâmetro | Descrição | Propriedade do utilizador | 
|---|---|---|
appEngineDirectory | 
    O diretório que contém app.yaml e outros ficheiros de configuração do App Engine suportados. A predefinição é
      ${basedir}/src/main/appengine. | 
    app.stage.appEngineDirectory | 
  
artifact | 
    A localização do arquivo JAR ou WAR a implementar. A predefinição é
        ${project.build.directory}/${project.build.finalName}.${project.packaging}. | 
    app.stage.artifact | 
  
cloudSdkPath | 
    Parâmetro opcional para configurar a localização da CLI gcloud. | cloudSdkPath | 
  
dockerDirectory | 
    O diretório que contém o Dockerfile e outros recursos do Docker.
      A predefinição é
      ${basedir}/src/main/docker/${basedir}/src/main/docker/. | 
    app.stage.dockerDirectory | 
  
stagingDirectory | 
    Obrigatório. O diretório para o qual a aplicação deve ser preparada. A predefinição é
        ${project.build.directory}/appengine-staging | 
    app.stage.stagingDirectory | 
  
appengine:start
Inicia a execução do servidor Web de desenvolvimento do App Engine de forma assíncrona
e, em seguida, regressa à linha de comandos. Quando este objetivo é executado, o comportamento é o mesmo que o objetivo run, exceto que o Maven continua a processar objetivos e sai após o servidor estar em funcionamento.
Pode usar os seguintes parâmetros:
| Propriedade | Descrição | Configuração do plugin | Configuração da linha de comandos | 
|---|---|---|---|
environment | 
    
      Um mapa de variáveis de ambiente a enviar para o servidor de desenvolvimento local.
      Exemplo:
      <environment> <key1>value1</key1> <key2>value2</key2> </environment>  | 
    devserver.environment | 
    app.devserver.environment | 
  
jvmFlags | 
    
      Argumentos adicionais a transmitir ao comando java quando iniciar uma instância da app. Pode ser especificado mais do que uma vez. Exemplo:
      <jvmFlags> <jvmFlag>-Xmx1024m</jvmFlag> <jvmFlag>-Xms256m</jvmFlag> </jvmFlags>  | 
    devserver.jvmFlags | 
    app.devserver.jvmFlags | 
  
host | 
    
      Nome do anfitrião ao qual os serviços de aplicação devem ser associados. A predefinição é
      localhost.
     | 
    devserver.host | 
    app.devserver.host | 
  
port | 
    
      Porta mais baixa à qual os serviços de aplicação devem ser associados. A predefinição é
      8080.
     | 
    devserver.port | 
    app.devserver.port | 
  
serverVersion | 
    Versão do servidor a iniciar. As opções são "1" e "2-alpha". A predefinição é "1". | devserver.serverVersion | 
    app.devserver.serverVersion | 
  
services | 
    
      Obrigatório. Caminhos para um diretório que contém um diretório que contém
      WEB-INF/web.xml. A predefinição é build/exploded-app.
     | 
    devserver.services | 
    app.devserver.services | 
  
startSuccessTimeout | 
    Quantidade de tempo em segundos a aguardar que o servidor de apps de desenvolvimento seja iniciado em segundo plano (quando usar appengineStart). | devserver.startSuccessTimeout | 
    app.devserver.startSuccessTimeout | 
  
appengine:stop
Para um servidor de programação Web do App Engine em execução.
Pode usar os seguintes parâmetros:
| Parâmetro | Descrição | Configuração do plugin | Configuração da linha de comandos | 
|---|---|---|---|
host | 
    Nome do anfitrião ao qual o servidor de administração deve ser associado. A predefinição é
        localhost | 
    devserver.adminHost | 
    app.devserver.adminHost | 
  
port | 
    Porta à qual o servidor de administração deve ser associado. A predefinição é
        8000. | 
    devserver.adminPort | 
    app.devserver.adminPort | 
  
cloudSdkHome | 
    Parâmetro opcional para configurar a localização da CLI gcloud. Se esta propriedade não for especificada, o plug-in transfere automaticamente a CLI gcloud. | cloudSdkHome | 
    cloudSdkHome |