Crear una aplicación Java

Especificar una versión de Java

De forma predeterminada, los buildpacks usan la versión más reciente compatible de Java, a menos que especifiques una versión. Si tu aplicación requiere una versión específica, puedes usar la variable de entorno GOOGLE_RUNTIME_VERSION para especificar una versión de JDK:

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

También puedes usar un descriptor de proyecto project.toml para codificar la variable de entorno junto con los archivos de tu proyecto. Consulta las instrucciones para compilar la aplicación con variables de entorno.

Gestionar dependencias

La configuración de dependencias se admite en proyectos que usan Maven o Gradle.

Configurar Maven

Las configuraciones de Maven se pueden aplicar mediante la variable de entorno MAVEN_OPTS. Consulta la documentación para obtener más instrucciones.

Ejemplos:

  • MAVEN_OPTS=-Xms256m -Xmx512m pasa estas marcas a la JVM que ejecuta Maven.
  • MAVEN_OPTS=--add-opens java.base/java.lang=ALL-UNNAMED para suprimir las advertencias de "acceso reflexivo ilegal" de Maven.

Para gestionar la dependencia de tu proyecto en Maven, puedes usar Maven Wrapper. Si no usas Maven Wrapper, los buildpacks usarán de forma predeterminada una versión reciente de Maven al ejecutar pack build.

Configurar Gradle

Las configuraciones de Gradle se pueden aplicar mediante la variable de entorno GRADLE_OPTS. Consulta la documentación para obtener más instrucciones.

Ejemplo:

GRADLE_OPTS=-Xms256m -Xmx512m pasa estas marcas a la JVM que ejecuta Gradle.

Google Cloud réplica alojada de Maven Central

Puedes usar la réplica alojada de Maven Central especificando las URLs disponibles.

Replicar repositorios en Maven

Para configurar una réplica, sigue las instrucciones de la sección Using Mirrors for Repositories (Usar réplicas para repositorios) de la documentación del proyecto Maven.

Crea una copia de settings.xml desde la ubicación predeterminada de ~/.m2/settings.xml hasta el directorio de origen de tu aplicación y especifica GOOGLE_BUILD_ARGS=--settings <path/to/settings>.

Nota: es relativo al directorio de origen.

Archivo settings.xml de ejemplo:

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

Replicar repositorios en Gradle

Para configurar un mirror, sigue las instrucciones de la sección Declarar repositorios de la documentación del proyecto de Gradle.

Entrada de ejemplo build.gradle:

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