我正在尝试使用 Google Cloud Builder 创建一个构建管道。我从非常简单的事情开始:“mvn clean deploy”,我使用的 cloudbuild.yaml 看起来像这样:
steps:
# Build the application with maven
- name: 'gcr.io/cloud-builders/mvn'
args: ['clean', 'deploy']
这似乎有效,maven 部署已启动,但最终我在编译时遇到错误:
Step #1: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-
compiler-plugin:3.1:compile (default-compile) on project codex-core-model:
Fatal error compiling: invalid target release: 1.9 -> [Help 1]
我的项目是用 java 9 编写的,所以我将不得不使用 jdk9 来编译它。显然 mvn 构建器使用 jdk8,我使用“mvn --version”检查了确定性并得到了这些结果:
Step #1: Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-
04-03T19:39:06Z)
Step #1: Maven home: /usr/share/maven
Step #1: Java version: 1.8.0_171, vendor: Oracle Corporation
Step #1: Java home: /usr/lib/jvm/java-8-openjdk-amd64/jre
Step #1: Default locale: en_US, platform encoding: ANSI_X3.4-1968
Step #1: OS name: "linux", version: "4.4.0-130-generic", arch: "amd64",
family: "unix"
我的问题:有没有一种简单的方法可以让这个构建器使用 jdk9 而不是 jdk8?
最佳答案
GCP with Java 9中没有可用的Cloud Builder镜像,可以查看最新源right here .
但您始终可以提交您的 own building steps .如果您查看 Cloud Build for Maven,您会发现您需要先构建您自己的 mvn
镜像,例如 this one , 插入 gcr.io
。
之后,您可以推送此构建器并在您的管道中使用它。
https://github.com/carlossg/docker-maven 该存储库似乎不再包含 Java 9。
关于java - 谷歌云构建器 - Java 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51809047/