Utilizzo di Apache Maven e del plug-in App Engine

Apache Maven è uno strumento di automazione della compilazione per Java.

App Engine fornisce un plug-in Maven che puoi utilizzare per creare ed eseguire il deployment della tua app su App Engine. Il plug-in non supporta i progetti Enterprise Application Archive (EAR).

Prima di iniziare

  1. Per determinare se Maven è installato e quale versione hai, esegui il seguente comando:

    mvn -v
    

    Se Maven è installato, viene visualizzata una lunga stringa di informazioni che inizia con Apache Maven seguita da un numero di versione come 3.9.1.

  2. Se non hai installato Maven 3.9.1 o versioni successive:

    1. Scarica Maven 3.9.1 o versioni successive.
    2. Installa Maven 3.9.1 o versioni successive.
  3. Se non l'hai ancora fatto, segui i passaggi riportati qui per scaricare l'interfaccia alla gcloud CLI, creare il tuo progetto Google Cloud e inizializzare l'app App Engine.

  4. Installa il componente app-engine-java della gcloud CLI:

    gcloud components install app-engine-java
    

Aggiunta del plug-in Maven App Engine

Per utilizzare il plug-in Maven di App Engine, aggiungi le seguenti righe alla sezione plugins nel file pom.xml del progetto:

<plugins>
   <plugin>
     <groupId>com.google.cloud.tools</groupId>
     <artifactId>appengine-maven-plugin</artifactId>
     <version>2.7.0</version>
   </plugin>
   <plugin>
     <groupId>org.eclipse.jetty</groupId>
     <artifactId>jetty-maven-plugin</artifactId>
     <version>9.3.7.v20160115</version>
   </plugin>
</plugins>
Il plug-in App Engine include il plug-in Maven Jetty, che puoi utilizzare per testare rapidamente la tua applicazione senza creare un file WAR.

Utilizzo del plug-in Maven Jetty per testare l'app in locale

Durante la fase di sviluppo, puoi eseguire e testare l'app in qualsiasi momento nel server di sviluppo richiamando il plug-in Maven Jetty.

Per eseguire l'app nel server di sviluppo:

  1. Se non l'hai ancora fatto, crea la tua app:

    mvn package
    
  2. Cambia directory al livello superiore del progetto (ad esempio myapp) e esegui l'app richiamando Maven:

    mvn jetty:run
    
  3. Attendi l'avvio del server e utilizza il browser per visitare http://localhost:8080/ per accedere all'app.

  4. Arresta l'app e il server di sviluppo premendo Ctrl+C.

Creazione e deployment dell'app

Dopo aver aggiunto il plug-in Maven per App Engine al file pom.xml del progetto, puoi utilizzare il seguente comando per eseguire il deployment dell'app:

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

Sostituisci PROJECT_ID con l'ID del tuo progetto Google Cloud. Se il tuo file pom.xml specifica già il tuo ID progetto, non è necessario includere la proprietà -Dapp.deploy.projectId nel comando eseguito.

L'obiettivo package compila e pacchettizza l'app, mentre l'obiettivo appengine:deploy esegue le seguenti operazioni:

  1. Genera un ID versione univoco per la nuova versione dell'app.

  2. Esegue il deployment della nuova versione in App Engine.

  3. Instrada tutto il traffico alla nuova versione.

Modificare i valori predefiniti del deployment

Puoi modificare il comportamento di deployment predefinito passando i parametri nel comando appengine:deploy. Ad esempio, il comando seguente esegue il deployment del servizio definito nel file pom.xml in un progetto Google Cloud specifico, assegna un ID versione personalizzato al servizio e disattiva il routing automatico del traffico per la nuova versione:

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

Puoi anche utilizzare il comando appengine:deploy per eseguire il deployment di file di configurazione, come cron.yaml, dispatch.yaml e index.yaml.

Per ulteriori informazioni, consulta la appengine:deploy documentazione di riferimento .

Passaggi successivi