Puoi utilizzare Gradle, un sistema di automazione della build flessibile, dichiarativo e utilizzato per automatizzare la creazione, il test, la pubblicazione e il deployment. Questa pagina spiega come utilizzare Gradle con un progetto App Engine nell'ambiente standard.
Prima di iniziare
Installa e configura i seguenti prerequisiti:
Installa Gradle (versione 3.4.1 o successive)
Configurazione e convalida del progetto Google Cloud
Devi configurare il tuo progetto Google Cloud e installare gcloud CLI:
Utilizza la console Google Cloud per creare e configurare il progetto Google Cloud :
- Seleziona o crea un nuovo progetto Google Cloud .
- Segui le istruzioni per assicurarti che esista un'applicazione App Engine e che la fatturazione sia abilitata:
- Se devi creare un'applicazione App Engine per il tuo progetto, ti viene chiesto di selezionare la regione in cui vuoi che si trovi l'applicazione App Engine.
- Segui le istruzioni per creare un nuovo account di fatturazione o selezionarne uno esistente.
- La dashboard si apre dopo la creazione dell'applicazione App Engine e l'attivazione della fatturazione nel progetto.
Non è necessario installare gcloud CLI perché il plug-in installa automaticamente l'SDK quando necessario.
Creazione di 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.
Crea e inserisci una nuova directory.
Per inizializzare un nuovo progetto:
gradle init --type java-library; mkdir -p src/main/webapp/WEB-INF; rm src/main/java/Library.java src/test/java/LibraryTest.java
Aggiungi quanto segue al file
build.gradle
per aggiungere attività Gradle, repository Maven, il plug-in Gradle di App Engine, dipendenze e configurazione delle attività:Devi anche aggiungere i seguenti file al progetto utilizzando un editor di testo o un ambiente di sviluppo integrato (IDE):
src/main/webapp/WEB-INF/appengine-web.xml
src/main/webapp/WEB-INF/web.xml
- Classi Java
- Classi di test Java
Consulta File di configurazione per una panoramica di un progetto Java App Engine.
Scaricare l'app Hello World
Clona il repository dell'app di esempio Hello World sulla tua macchina locale:
git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git
In alternativa, puoi scaricare il campione come file ZIP ed estrarlo.
Passa alla directory che contiene il codice di esempio:
cd java-docs-samples/appengine-java8/helloworld
Testare l'applicazione con il server di sviluppo
Per accedere alle risorse Google dal tuo progetto durante l'esecuzione in locale, imposta le credenziali predefinite dell'applicazione eseguendo:
gcloud auth application-default login
Passa alla radice della directory dell'applicazione.
Durante la fase di sviluppo, puoi eseguire e testare la tua applicazione in qualsiasi momento nel server di sviluppo richiamando Gradle:
gradle appengineRun
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 vedi un messaggio simile a questo:
:compileJava :processResources NO-SOURCE :classes :war :explodeWar :assemble :appengineRun 2018-06-05 22:50:46.231:INFO::main: Logging initialized @321ms Jun 06, 2018 2:50:49 AM com.google.appengine.tools.development.AbstractModule startup INFO: Module instance default is running at http://localhost:8080/ Jun 06, 2018 2:50:49 AM com.google.appengine.tools.development.AbstractModule startup INFO: The admin console is running at http://localhost:8080/_ah/admin Jun 05, 2018 10:50:49 PM com.google.appengine.tools.development.DevAppServerImpl doStart INFO: Dev App Server is now running
Visualizza la tua app in esecuzione su
http://127.0.0.1:8080
.
Debug sul server di sviluppo
Per eseguire il debug di un'applicazione in esecuzione in locale, imposta la proprietà jvmFlags
per
abilitare il debug sulla JVM sottostante, ad esempio:
appengine {
run {
jvmFlags = ['-Xdebug', '-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005']
}
}
Abilita il ricaricamento rapido dell'applicazione
Il ricaricamento rapido è la possibilità di aggiornare una o più classi in un'applicazione attualmente in esecuzione senza arrestare l'ambiente. Per attivare il ricaricamento a caldo:
Devi indicare al server locale di cercare modifiche:
appengine { run { automaticRestart = true } }
Mentre l'app è in esecuzione, esegui l'attività
explodeWar
per copiare le modifiche direttamente nell'app estratta e propagarle nell'applicazione in esecuzione.
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.
Utilizzo del wrapper Gradle
Gradle fornisce un meccanismo per scaricare ed eseguire la versione richiesta di Gradle senza installazione:
Linux/macOS
./gradlew appengineRun
Windows
gradlew.bat appengineRun
Ulteriori informazioni su Gradle sono disponibili in Attività e proprietà di 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à consultando Attività e proprietà di Gradle di App Engine.