Haa*_*rdG 5 java gradle spring-boot google-cloud-platform java-11
我正在一个小组项目中,我们希望将后端部署到Google Cloud。后端使用Java11,Gradle和Spring-Boot创建,并通过Travis通过GitHub部署到Google Cloud。
后端使用可以在localhost上正常运行./gradlew bootrun,但是当尝试将其部署到Google Cloud时,出现以下错误:
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.
我们通过以下过程重新创建了此错误,从等式中删除了GitHub和Travis:
使用以下设置在https://start.spring.io/创建一个新的Spring-Boot项目:
创建完成后,我们添加了文件app.yaml和client_secret.json。
该client_secret.json文件包含有关gcloud上的测试客户端的信息,并具有很多权限。
app.yaml:
runtime: java11
env: flex
service: default
handlers:
- url: /.*
script: this field is required, but ignored
Run Code Online (Sandbox Code Playgroud)
双方app.yaml并client_secret.json存储在同一个地方build.gradle,并settings.gradle有。
然后,从终端(我们在VScode中使用了那个)开始运行gcloud app deploy。此命令首先询问我们是否要将后端部署到指定的google cloud项目,并列出它找到了app.yaml文件,源和目标。然后,当我们按Y继续时,出现错误。
这是build.gradle文件,可能有用(?):
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}"
}
}
Run Code Online (Sandbox Code Playgroud)
所以我们的问题是 错误是什么意思?以及我们如何解决它?我们尝试了很多事情,例如同时编辑app.yaml和build.gradle,但似乎无济于事。我们还很难理解错误发生的位置,因为后端可以在本地主机上正常运行。
我们感谢您的每一个回应!
最好的问候HaavardG:D
| 归档时间: |
|
| 查看次数: |
114 次 |
| 最近记录: |