构建和测试 Java 应用

本页面介绍了如何使用 Cloud Build 构建和测试 基于 Java 的应用,将构建的工件存储在 Artifact Registry,并生成 build 出处信息。

准备工作

使用 maven 映像

您可以将 Cloud Build 配置为使用 Docker Hub 中的 maven 映像

如需在 maven 映像中执行任务,请在构建配置中添加包含以下字段的步骤:

  • name:将此字段的值设置为 mavenmaven:<tag>,其中 标记表示版本。如果您未指定映像标记,则 Cloud Build 默认使用 latest 映像。
  • entrypoint:设置此字段会替换 name 中引用的映像的默认入口点。将此字段的值设置为 mvn 以进行调用 将 mvn 作为构建步骤的入口点并运行 mvn 命令。
  • args:构建步骤的 args 字段接受一系列参数, 并将其传递给 name 字段引用的图像。

以下构建步骤为 maven 映像指定 entrypoint 标记为 3.3-jdk-8 并输出构建工具版本:

          steps:
          - name: maven:3.3-jdk-8
            entrypoint: mvn
            args: ['--version']

配置 Java 构建

  1. 在项目根目录中,创建一个名为 cloudbuild.yaml 的构建配置文件。

  2. 运行测试maven 提供了 maven test,用于下载依赖项、构建应用并运行源代码中指定的任何测试。构建步骤的 args 字段采用参数列表,并将其传递给 name 字段引用的映像。

    在构建配置文件中,将 test 添加到 args 字段可在 maven 内调用 test

         steps:
         - name: maven:3.3-jdk-8
           entrypoint: mvn
           args: ['test']
    
  3. 软件包应用 (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=true']
    
  4. 上传到 Artifact Registry

    在构建配置文件中,使用 mavenArtifacts 字段指定 Artifact Registry 中的应用路径和 Maven 代码库:

    artifacts:
      mavenArtifacts:
      - repository: 'https://location-maven.pkg.dev/project-id/repository-name'
        path: 'app-path'
        artifactId: 'build-artifact'
        groupId: 'group-id'
        version: 'version'
    

    替换以下值:

    • location:您的代码库在 Artifact Registry 中的位置
    • project-id:包含 Artifact Registry 制品库的 Google Cloud 项目的 ID。
    • repository-name:Artifact Registry 中 Maven 仓库的名称。
    • app-path:打包应用的路径。
    • build-artifact:根据构建步骤创建的软件包文件的名称。
    • group-id:在所有 Maven 项目中唯一标识您的项目,格式为 com.mycompany.app。如需了解详情,请参阅 Maven 命名惯例指南
    • version:应用的版本号,格式为数字和点,例如 1.0.1
  5. 可选:启用出处生成功能

    Cloud Build 可以生成可验证的软件工件的供应链级别 (SLSA) 构建来源元数据,以帮助保护您的持续集成流水线。

    如需启用来源生成,请将 requestedVerifyOption: VERIFIED 添加到配置文件中的 options 部分。

  6. 启动构建手动使用构建触发器

    构建完成后,您可以查看代码库详情 在 Artifact Registry 中构建

    您还可以查看 build 来源元数据验证来源

后续步骤