Utilizar Apache Maven y el complemento de App Engine

Apache Maven es una herramienta de automatización de compilaciones para Java.

App Engine proporciona un complemento de Maven que puedes usar para compilar y desplegar tu aplicación en App Engine. El complemento no admite proyectos de archivos de aplicaciones empresariales (EAR).

Antes de empezar

  1. Para determinar si Maven está instalado y qué versión tienes, ejecuta el siguiente comando:

    mvn -v
    

    Si Maven está instalado, se mostrará una cadena larga de información que empieza por Apache Maven y va seguida de un número de versión, como 3.9.1.

  2. Si no tienes instalada la versión 3.9.1 de Maven o una posterior:

    1. Descarga Maven 3.9.1 o una versión posterior.
    2. Instala Maven 3.9.1 o una versión posterior.
  3. Si aún no lo has hecho, sigue los pasos que se indican aquí para descargar la CLI de gcloud, crear tu Google Cloud proyecto e inicializar tu aplicación App Engine.

  4. Instala el componente app-engine-java de gcloud CLI:

    gcloud components install app-engine-java
    

Añadir el complemento de Maven de App Engine

Para usar el complemento Maven de App Engine, añade las siguientes líneas a la sección plugins del archivo pom.xml de tu proyecto:

<plugins>
   <plugin>
     <groupId>com.google.cloud.tools</groupId>
     <artifactId>appengine-maven-plugin</artifactId>
     <version>2.8.1</version>
   </plugin>
   <plugin>
     <groupId>org.eclipse.jetty</groupId>
     <artifactId>jetty-maven-plugin</artifactId>
     <version>9.4.56.v20240826</version>
   </plugin>
</plugins>
El complemento App Engine incluye el complemento Jetty Maven, que puedes usar para probar tu aplicación rápidamente sin crear un archivo WAR.

Usar el complemento Jetty Maven para probar tu aplicación de forma local

Durante la fase de desarrollo, puedes ejecutar y probar tu aplicación en cualquier momento en el servidor de desarrollo invocando el complemento Jetty Maven.

Para ejecutar tu aplicación en el servidor de desarrollo, sigue estos pasos:

  1. Compila tu aplicación si aún no lo has hecho:

    mvn package
    
  2. Cambia al directorio de nivel superior de tu proyecto (por ejemplo, myapp) y ejecuta la aplicación invocando Maven:

    mvn jetty:run
    
  3. Espera a que se inicie el servidor y usa tu navegador para visitar http://localhost:8080/ y acceder a tu aplicación.

  4. Cierra la aplicación y el servidor de desarrollo pulsando Control + C.

Crear y desplegar una aplicación

Después de añadir el complemento Maven para App Engine al archivo pom.xml de tu proyecto, puedes usar el siguiente comando para compilar y desplegar tu aplicación:

mvn package appengine:deploy -Dapp.deploy.projectId=PROJECT_ID

Sustituye PROJECT_ID por el ID de tu Google Cloud proyecto. Si tu archivo pom.xml ya especifica tu ID de proyecto, no es necesario que incluyas la propiedad -Dapp.deploy.projectId en el comando que ejecutes.

El objetivo package compila y empaqueta tu aplicación, y el objetivo appengine:deploy hace lo siguiente:

  1. Genera un ID de versión único para la nueva versión de tu aplicación.

  2. Despliega la nueva versión en App Engine.

  3. Dirige todo el tráfico a la nueva versión.

Cambiar los valores predeterminados de la implementación

Puedes cambiar el comportamiento de implementación predeterminado pasando parámetros en el comando appengine:deploy. Por ejemplo, el siguiente comando despliega el servicio definido en el archivo pom.xml en un proyecto Google Cloud específico, asigna un ID de versión personalizado al servicio y desactiva el enrutamiento automático del tráfico para la nueva versión:

mvn appengine:deploy -Dapp.deploy.projectId=PROJECT_ID -Dapp.deploy.version=VERSION_ID -Dapp.deploy.promote=False

También puedes usar el comando appengine:deploy para implementar archivos de configuración, como cron.yaml, dispatch.yaml y index.yaml.

Para obtener más información, consulta la appengine:deploy referencia .

Siguientes pasos