Creazione di un'applicazione Java

Specifica una versione di 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. Vedi le istruzioni su creando 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.
  • Da MAVEN_OPTS=--add-opens java.base/java.lang=ALL-UNNAMED a Sopprimere l'"accesso riflessivo illegale" avvisi di Maven.

Per gestire la dipendenza del progetto da Maven, puoi utilizzare Wrapper Maven. 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. Consulta: documentazione per ulteriori istruzioni.

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 ospitato di Maven Central specificando URL disponibili.

Esegui 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/"
      }
  }