Specify a Java version
By default, the latest version of Java 11 is used. If your
application requires a specific version, you can use the GOOGLE_RUNTIME_VERSION
environment variable to specify a JDK version:
pack
build
sample
-
java
--
builder
=
gcr
.
io
/
buildpacks
/
builder
\
--
env
GOOGLE_RUNTIME_VERSION
=
17
You can also use a project.toml
project descriptor to encode
the environment variable alongside your project files. See instructions on building the application with environment variables
.
Manage dependencies
Dependency configuration is supported for projects that use Maven or Gradle.
Configure Maven
Maven configurations can be applied using the MAVEN_OPTS
environment variable.
See documentation
for
additional instructions.
Examples:
-
MAVEN_OPTS=-Xms256m -Xmx512m
passes these flags to the JVM running Maven. -
MAVEN_OPTS=--add-opens java.base/java.lang=ALL-UNNAMED
to suppress "illegal reflective access" warnings from Maven.
To manage your project's dependency on Maven itself, you can use the Maven Wrapper
. If you do not use the
Maven Wrapper, buildpacks defaults to using a recent version of Maven
when running pack build
.
Configure Gradle
Gradle configurations can be applied using the GRADLE_OPTS
environment
variable. See documentation
for additional instructions.
Example:
GRADLE_OPTS=-Xms256m -Xmx512m
passes these flags to the JVM running Gradle.
Google Cloud hosted Maven Central mirror
You can use the hosted mirror of Maven Central by specifying the available URLs .
Mirror repositories in Maven
To configure a mirror, follow the Using Mirrors for Repositories instructions in the Maven project documentation.
Create a copy of the settings.xml
from the default location of ~/.m2/settings.xml
to inside your application source directory and specify GOOGLE_BUILD_ARGS=--settings <path/to/settings>
.
Note:
Example settings.xml
file:
<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>
Mirror repositories in Gradle
To configure a mirror, follow the Declaring Repositories instructions in the Gradle project documentation.
Example build.gradle
entry:
reposi
t
ories
{
mave
n
{
url
"https://maven-central.storage-download.googleapis.com/maven2/"
}
}