Creazione di un'applicazione Java

Specificare una versione di Java

Per impostazione predefinita, i buildpack utilizzano la versione più recente supportata di Java, a meno che tu non ne specifichi una. 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=21

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

Gestisci 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 istruzioni aggiuntive.

Esempi:

  • MAVEN_OPTS=-Xms256m -Xmx512m passa questi flag alla JVM che esegue Maven.
  • MAVEN_OPTS=--add-opens java.base/java.lang=ALL-UNNAMED per eliminare gli avvisi di "accesso riflettivo illegale" da Maven.

Per gestire la dipendenza del progetto da Maven stesso, puoi utilizzare Maven Wrapper. Se non utilizzi Maven Wrapper, i buildpack utilizzano per impostazione predefinita 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. Per ulteriori istruzioni, consulta la documentazione.

Esempio:

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

Google Cloud mirror di Maven Central ospitato

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

Mirroring dei repository in Maven

Per configurare un mirror, segui le istruzioni riportate in Utilizzo dei mirror 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.

File settings.xml di esempio:

<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>

Mirroring dei repository in Gradle

Per configurare un mirror, segui le istruzioni Dichiarazione dei repository nella documentazione del progetto Gradle.

Voce build.gradle di esempio:

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