本页介绍了如何使用 Cloud Build 构建和测试基于 Java 的应用、将构建的工件存储在 Artifact Registry 中的 Maven 仓库中,以及生成构建来源信息。
准备工作
- 熟悉如何创建基于 Java 的应用。
- 熟悉 Maven
- 准备好您的 Java 项目。
- 熟悉如何编写 Cloud Build 配置文件。
- 在 Artifact Registry 中拥有 Maven 代码库。如果您还没有代码库,请创建新代码库。
- 如需运行此页面中的
gcloud命令,请安装 Google Cloud CLI。
使用 maven 映像
您可以将 Cloud Build 配置为使用 Docker Hub 中的 maven 映像来构建 Java 应用。
如需在 maven 映像中执行您的任务,请向 build 配置文件添加一个步骤,并添加以下字段:
name:将此字段的值设置为maven或maven:<tag>,其中代码代表版本。如果您未指定映像标记,则 Cloud Build 默认使用latest映像。entrypoint:设置此字段会替换name中引用的映像的默认入口点。将此字段的默认值设置为mvn以调用mvn作为构建步骤的入口点并运行mvn命令。args:构建步骤的args字段采用一系列参数,并将其传递给name字段引用的映像。
以下构建步骤为标记为 3.3-jdk-8 的 maven 映像指定了 entrypoint,并输出了构建工具版本:
steps:
- name: maven:3.3-jdk-8
entrypoint: mvn
args: ['--version']
配置 Java 构建
在项目根目录中,创建一个名为
cloudbuild.yaml的构建配置文件。运行测试:
maven会提供maven test,用于下载依赖项、构建应用以及运行源代码中指定的任何测试。构建步骤的args字段采用一系列参数,并将其传递给name字段引用的映像。在构建配置文件中,将
test添加到args字段可在maven内调用test:steps: - name: maven:3.3-jdk-8 entrypoint: mvn args: ['test']软件包应用 (Package application):如需针对
maven映像将您的应用打包为 JAR 文件,请在args字段中指定package命令。package命令可在/workspace/target/中构建 JAR 文件。以下构建步骤将打包您的 Java 应用:
steps: - name: maven:3.3-jdk-8 entrypoint: mvn args: ['package','-Dmaven.test.skip=