Gradle è uno strumento di automazione della compilazione open source incentrato su flessibilità e prestazioni. App Engine fornisce un plug-in Gradle che puoi utilizzare per creare ed eseguire il deployment della tua app su App Engine. Gli esempi di codice in questa guida utilizzano la versione 8 di Gradle.
Prima di iniziare
Se non l'hai ancora fatto, segui i passaggi descritti in questa guida 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
Creare un nuovo progetto Gradle
Puoi creare un nuovo progetto Gradle da zero utilizzando la shell. In alternativa, per provare il plug-in, puoi scaricare, eseguire localmente e implementare il progetto Hello World.
Per creare un nuovo progetto:
Crea una nuova directory e accedivi.
Per inizializzare un nuovo progetto:
Esegui
gradle init
:gradle init --type java-application
Ti verrà chiesto di rispondere alle seguenti domande:
- Inserisci la versione Java di destinazione (min: 7, predefinita: 21): 21
- Seleziona la struttura dell'applicazione: 1 per il progetto di un'unica applicazione
- Seleziona il DSL dello script di compilazione: 2 (per Groovy)
- Seleziona il framework di test: 1 (per JUnit 4)
- Genera build utilizzando nuove API e nuovi comportamenti: no
Crea la cartella
WEB-INF
:mkdir -p app/src/main/webapp/WEB-INF
Crea la cartella
appengine
:mkdir -p app/src/main/appengine
Rimuovi i file stub generati da
gradle init
:rm ./app/src/main/java/org/example/App.java ./app/src/test/java/org/example/AppTest.java
Aggiungi quanto segue al file
app/build.gradle
per aggiungere attività Gradle di App Engine, repository Maven, il plug-in Gradle di App Engine, le dipendenze e la configurazione delle attività:Devi anche aggiungere i seguenti file al progetto utilizzando un editor di testo o un ambiente di sviluppo integrato (IDE):
- app/src/main/docker/Dockerfile (facoltativo per i runtime personalizzati)
- Classi Java
- Classi di test Java
Consulta Configurare l'ambiente di sviluppo per una panoramica di un progetto Java App Engine.
Testare l'applicazione con il server di sviluppo
Per accedere alle risorse Google dal tuo progetto quando esegui l'applicazione localmente, imposta le credenziali predefinite dell'applicazione eseguendo:
gcloud auth application-default login
Passa alla directory principale dell'applicazione.
Durante la fase di sviluppo, puoi eseguire e testare l'applicazione in qualsiasi momento sul server di sviluppo richiamando Gradle:
gradle jettyRun
In alternativa, puoi eseguire Gradle senza installarlo utilizzando il wrapper Gradle.
Attendi l'avvio del server. Il server viene avviato con l'applicazione in esecuzione quando visualizzi un messaggio simile al seguente:
:prepareInplaceWebAppFolder :createInplaceWebAppFolder :compileJava :processResources UP-TO-DATE :classes :prepareInplaceWebAppClasses :prepareInplaceWebApp :jettyRun 17:40:05 INFO Jetty 9.2.15.v20160210 started and listening on port 8080 17:40:05 INFO runs at: 17:40:05 INFO http://localhost:8080/
Visualizza la tua app in esecuzione all'indirizzo
http://localhost:8080
.
Per scoprire di più sul plug-in Gretty, consulta Configurazione di Gretty e Attività di Gretty.
Esegui il deployment dell'applicazione
Per eseguire il deployment dell'applicazione:
gradle appengineDeploy
L'attività appengineDeploy
e tutte le altre attività Gradle hanno proprietà associate
che puoi utilizzare. Per un elenco completo di attività e proprietà, consulta
Attività e proprietà Gradle di App Engine.
Utilizzare il wrapper Gradle
Gradle fornisce un meccanismo per scaricare ed eseguire la versione richiesta di Gradle senza installazione:
Linux/macOS
Passa alla directory codice campione.
Esegui gradlew:
./gradlew jettyRun
Windows
Passa alla directory codice campione.
Esegui gradlew:
./gradlew.bat jettyRun
Ulteriori informazioni su Gradle sono disponibili in Attività e proprietà Gradle di App Engine.
Passaggi successivi
- Esplora il codice del plug-in e segnala i problemi su GitHub.
- Scopri come specificare le proprietà per le attività facendo riferimento a Attività e proprietà di Gradle di App Engine.