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
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 come3.9.1
.Se non hai installato Maven 3.9.1 o versioni successive:
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.
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>
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:
Se non l'hai ancora fatto, crea la tua app:
mvn package
Cambia directory al livello superiore del progetto (ad esempio
myapp
) e esegui l'app richiamando Maven:mvn jetty:run
Attendi l'avvio del server e utilizza il browser per visitare
http://localhost:8080/
per accedere all'app.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:
Genera un ID versione univoco per la nuova versione dell'app.
Esegue il deployment della nuova versione in App Engine.
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
- Esamina l'esempio di plug-in Maven App Engine per JDK 21.
- Esplora il codice del plug-in e segnala i problemi su GitHub.
- Scopri come specificare i parametri per le attività facendo riferimento ai parametri e agli obiettivi Maven di App Engine.