Creazione di un'applicazione Java

Specifica una versione Java

Per impostazione predefinita, viene utilizzata la versione più recente di Java 11. Se la tua applicazione richiede una versione specifica, puoi utilizzare la variabile di ambiente GOOGLE_RUNTIME_VERSION per specificare una versione JDK:

pack build sample-java --builder=gcr.io/buildpacks/builder \
  --env GOOGLE_RUNTIME_VERSION=17

Puoi anche utilizzare un descrittore di progetto project.toml per codificare la variabile di ambiente insieme ai file di progetto. Consulta le istruzioni sulla creazione dell'applicazione con variabili di ambiente.

Gestisci le dipendenze

La configurazione delle dipendenze è supportata per i progetti che utilizzano Maven o Gradle.

Configura Maven

Le configurazioni Maven possono essere applicate utilizzando la variabile di ambiente MAVEN_OPTS. Consulta la documentazione per ulteriori istruzioni.

Esempi:

  • MAVEN_OPTS=-Xms256m -Xmx512m passa questi flag al Maven in esecuzione dalla JVM.
  • MAVEN_OPTS=--add-opens java.base/java.lang=ALL-UNNAMED per eliminare gli avvisi di "accesso riflessivo illegale" di Maven.

Per gestire la dipendenza del progetto da Maven stesso, puoi utilizzare Maven Wrapper. Se non utilizzi il wrapper Maven, per impostazione predefinita buildpack utilizza una versione recente di Maven durante l'esecuzione di pack build.

Configura Gradle

Le configurazioni Gradle possono essere applicate utilizzando la variabile di ambiente GRADLE_OPTS. Consulta la documentazione per ulteriori istruzioni.

Esempio:

GRADLE_OPTS=-Xms256m -Xmx512m passa questi flag alla JVM che esegue Gradle.

Mirroring Maven Central ospitato su Google Cloud

Puoi utilizzare il mirroring ospitato di Maven Central specificando gli URL disponibili.

Esegui il mirroring dei repository in Maven

Per configurare un mirror, segui le istruzioni sull'utilizzo dei Mirroring per i repository nella documentazione del progetto Maven.

Crea una copia di settings.xml dalla posizione predefinita di ~/.m2/settings.xml all'interno della directory di origine dell'applicazione e specifica GOOGLE_BUILD_ARGS=--settings <path/to/settings>.

Nota: è relativo alla directory di origine.

Esempio di file settings.xml:

<settings>
  <mirrors>
    <mirror>
      <id>google-maven-central</id>
      <name>Cloud Storage Maven Central mirror</name>
      <url>https://maven-central.storage-download.googleapis.com/maven2/</url>
      <mirrorOf>central</mirrorOf>
    </mirror>
  </mirrors>
</settings>

Esegui il mirroring dei repository in Gradle

Per configurare un mirror, segui le istruzioni per dichiarare i repository nella documentazione del progetto Gradle.

Esempio di voce build.gradle:

  repositories {
      maven {
          url "https://maven-central.storage-download.googleapis.com/maven2/"
      }
  }