Estoy tratando de crear una fuente de la estructura con la nube de Google constructor. Empecé con algo muy simple: "Implementar limpia mvn", el cloudbuild.yaml estoy usando es similar al siguiente:
steps:
# Build the application with maven
- name: 'gcr.io/cloud-builders/mvn'
args: ['clean', 'deploy']
Esto parece estar funcionando, se inicia el despliegue experto pero con el tiempo me encuentro con un error durante la compilación:
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]
Mi proyecto está escrito en Java 9, por lo que tendrá que compilarlo usando jdk9. Al parecer, el constructor de MVN usos jdk8, he comprobado la certeza usando "mvn -version" y tuvo los siguientes resultados:
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"
Mi pregunta: ¿Hay una manera fácil de hacer uso de este constructor jdk9 en lugar de jdk8?
No hay ninguna imagen Nube Constructor disponible en GCP con Java 9, se puede ver el código fuente más reciente aquí .
Pero siempre se puede enviar sus propias medidas de construcción . Si marca la construcción de la nube de Maven, se puede ver que se necesita para construir en primer lugar, su propia mvn
imagen, al igual que éste , empujado dentro gcr.io
.
Después de eso, se puede empujar este constructor y utilizarlo en su tubería.
https://github.com/carlossg/docker-maven No parece que la cesión temporal para contener Java 9 más.