implementación de Java-11 primavera-arranque para google error nube: aplicación no satisface los requisitos para [java11]

HaavardG:

Estoy trabajando en un proyecto de grupo donde queremos desplegar un back-end a la nube de Google. El backend se crea con Java11, Gradle y Primavera-Boot, y despliega a través de GitHub con Travis a la nube de Google.

Las carreras de back-end como debe ser en localhost ./gradlew bootrun, pero cuando se trata de implementarlo en la nube de Google obtenemos el siguiente error:

ERROR: (gcloud.app.deploy) Your application does not satisfy all of the requirements for a runtime of type [java11]. Please correct the errors and try again.

error Java11 desde el terminal

Recreamos este error con el siguiente procedimiento, la eliminación de GitHub y Travis partir de la ecuación:

Creado un nuevo proyecto Primavera-Boot en https://start.spring.io/ con estos valores:

  • Proyecto: Gradle
  • Idioma: Java
  • Primavera de arranque: 2.1.9
  • Proyecto de metadatos: Opciones: Java: 11
  • Dependencias: Seguridad Primavera, Primavera Web, Soporte GCP

Una vez creado, hemos añadido los archivos app.yamly client_secret.json.

El client_secret.jsonarchivo contiene información acerca de una prueba-cliente en gcloud con una gran cantidad de permisos.

app.yaml:

runtime: java11
env: flex

service: default

handlers:
- url: /.*
  script: this field is required, but ignored

Tanto app.yamly client_secret.jsonse almacenan en el mismo lugar build.gradley settings.gradleson.

Entonces, desde el terminal (utilizamos el de VScode), nos encontramos gcloud app deploy. Este comando primero nos pregunta si queremos implementar el backend para un proyecto de Google Cloud especificado, lista que se encuentra el app.yamlarchivo, la fuente y el destino. Entonces, cuando hemos presionado Y para continuar, aparece el error.

Aquí está el build.gradlearchivo, que puede ser útil (?):

plugins {
    id 'org.springframework.boot' version '2.1.9.RELEASE'
    id 'io.spring.dependency-management' version '1.0.8.RELEASE'
    id 'java'
}

group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'

repositories {
    mavenCentral()
}

ext {
    set('springCloudVersion', "Greenwich.SR3")
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-security'
    implementation 'org.springframework.boot:spring-boot-starter-web'
    implementation 'org.springframework.cloud:spring-cloud-gcp-starter'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    testImplementation 'org.springframework.security:spring-security-test'
}

dependencyManagement {
    imports {
        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${springCloudVersion}"
    }
}

Así que nuestra pregunta es; ¿Qué significa el error? Y ¿cómo solucionarlo? Hemos probado un montón de cosas como la edición de ambos app.yamly build.gradle, pero nada parece funcionar. También luchamos para entender dónde se produce el error, ya que el back-end funciona muy bien en localhost.

Agradecemos todas las respuestas!

Saludos cordiales HaavardG: D

HaavardG:

Parece que la eliminación env: flexdel app.yamlresolvieron el problema que env: flexde alguna manera no es compatible con Java11.

Yo creo...

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=327678&siteId=1
Recomendado
Clasificación