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 del progetto project.toml per codificare la variabile di ambiente insieme ai file del progetto. Consulta le istruzioni sulla creazione dell'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. Per istruzioni aggiuntive, consulta la documentazione.

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 riflesso illegale" da Maven.

Per gestire la dipendenza del progetto da Maven stesso, puoi utilizzare il Maven Wrapper. Se non utilizzi Maven Wrapper, per impostazione predefinita i buildpack utilizzano una versione recente di Maven quando esegui pack build.

Configura Gradle

Le configurazioni di 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.

Mirror di Maven Central ospitato su Google Cloud

Puoi utilizzare il mirror in hosting di Maven Central specificando i URL disponibili.

Eseguire il mirroring dei repository in Maven

Per configurare un mirror, segui le istruzioni su 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>

Esegui il mirroring dei repository in Gradle

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

Voce di esempio build.gradle:

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