Apache Maven und App Engine-Plug-in verwenden

Apache Maven ist ein Build-Automatisierungstool für Java.

App Engine bietet ein Maven-Plug-in, mit dem Sie Ihre Anwendung erstellen und in App Engine bereitstellen können. Das Plug-in unterstützt keine Enterprise Application Archive-Projekte (EAR).

Hinweis

  1. Ermitteln Sie mit dem folgenden Befehl, ob Maven installiert ist und welche Version Sie haben:

    mvn -v
    

    Wenn Maven installiert ist, wird ein langer String mit Informationen angezeigt, der mit Apache Maven beginnt. Darauf folgt eine Versionsnummer wie 3.5.

  2. Wenn Maven 3.5 oder höher nicht installiert ist:

    1. Laden Sie Maven 3.5 oder höher herunter.
    2. Installieren Sie Maven 3.5 oder höher.
  3. Führen Sie, falls noch nicht erfolgt, die Schritte im Schnellstart aus, um das Cloud SDK herunterzuladen, Ihr Cloud-Projekt zu erstellen und Ihre App Engine-Anwendung zu initialisieren.

  4. Installieren Sie die Cloud SDK-Komponente app-engine-java:

    gcloud components install app-engine-java
    

App Engine Maven-Plug-in hinzufügen

Wenn Sie das App Engine Maven-Plug-in verwenden möchten, fügen Sie dem Abschnitt plugins in der Datei pom.xml Ihres Projekts die folgenden Zeilen hinzu:

<plugins>
   <plugin>
     <groupId>com.google.cloud.tools</groupId>
     <artifactId>appengine-maven-plugin</artifactId>
     <version>2.2.0</version>
   </plugin>
   <plugin>
     <groupId>org.eclipse.jetty</groupId>
     <artifactId>jetty-maven-plugin</artifactId>
     <version>9.3.7.v20160115</version>
   </plugin>
</plugins>
Das App Engine-Plug-in enthält das Jetty Maven-Plug-in, mit dem Sie Ihre Anwendung schnell testen können, ohne eine WAR-Datei zu erstellen.

Anwendung mit dem Jetty Maven-Plug-in lokal testen

Sie können Ihre Anwendung in der Entwicklungsphase jederzeit auf dem Entwicklungsserver ausführen und testen, indem Sie das Jetty Maven-Plug-in aufrufen.

So führen Sie Ihre Anwendung auf dem Entwicklungsserver aus:

  1. Erstellen Sie die Anwendung, falls noch nicht geschehen:

    mvn package
    
  2. Wechseln Sie in die oberste Ebene Ihres Projekts (z. B. in myapp) und führen Sie Ihre Anwendung durch Aufrufen von Maven aus:

    mvn jetty:run
    
  3. Warten Sie, bis der Server gestartet wird, und rufen Sie http://localhost:8080/ über Ihren Browser auf, um auf Ihre Anwendung zuzugreifen.

  4. Fahren Sie die Anwendung und den Entwicklungsserver herunter, indem Sie Strg + C drücken.

Anwendung erstellen und bereitstellen

Nachdem Sie das Maven-Plug-in für App Engine zur Datei pom.xml Ihres Projekts hinzugefügt haben, können Sie mit dem folgenden Befehl Ihre Anwendung erstellen:

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

Ersetzen Sie PROJECT_ID durch die ID Ihres Cloud-Projekts. Wenn in der Datei pom.xml bereits Ihre Projekt-ID angegeben ist, müssen Sie das Attribut -Dapp.deploy.projectId nicht in dem von Ihnen ausgeführten Befehl einfügen.

Mit dem Ziel package wird Ihre Anwendung erstellt und gepackt, mit dem Ziel appengine:deploy wird Folgendes ausgeführt:

  1. Generiert eine eindeutige Versions-ID für die neue Version Ihrer App.

  2. Stellt die neue Version in App Engine bereit.

  3. Leitet den gesamten Traffic zur neuen Version weiter.

Standardeinstellungen für die Bereitstellung ändern

Sie können das Standardverhalten der Bereitstellung ändern, indem Sie Parameter im Befehl appengine:deploy übergeben. Mit dem folgenden Befehl wird beispielsweise der in der Datei pom.xml definierte Dienst in einem bestimmten Google Cloud-Projekt bereitgestellt, dem Dienst eine benutzerdefinierte Versions-ID zugewiesen und das automatische Traffic-Routing für die neue Version ausgeschaltet:

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

Sie können auch den Befehl appengine:deploy verwenden, um Konfigurationsdateien wie cron.yaml, dispatch.yaml und index.yaml bereitzustellen.

Weitere Informationen finden Sie in der appengine:deploy-Referenz.

Nächste Schritte