【问题标题】:Google Cloud App Engine deploy of java app failsJava 应用程序的 Google Cloud App Engine 部署失败
【发布时间】:2019-03-17 19:33:37
【问题描述】:

我正在尝试将示例 java 应用程序 (\java-docs-samples\flexible\helloworld) 部署到我的 GCP App Engine 项目。源代码在我的笔记本电脑上,我在本地构建了项目。

错误表明正在尝试构建。我还将app.yaml 移动到项目根目录 - 没有帮助。我只需要上传.war 文件。有什么想法吗?

我要部署的命令行:

gcloud app deploy src\main\appengine\app.yaml  --project=my-real-project-name

来自错误日志:

Pulling image: gcr.io/gcp-runtimes/java/runtime-builder@sha256:b279f7e1075a502c04115c15412df5616b9d0e6e9906ed6fc6e426e0bb9602ec
sha256:b279f7e1075a502c04115c15412df5616b9d0e6e9906ed6fc6e426e0bb9602ec: Pulling from gcp-runtimes/java/runtime-builder
Digest: sha256:b279f7e1075a502c04115c15412df5616b9d0e6e9906ed6fc6e426e0bb9602ec
Status: Downloaded newer image for gcr.io/gcp-runtimes/java/runtime-builder@sha256:b279f7e1075a502c04115c15412df5616b9d0e6e9906ed6fc6e426e0bb9602ec
Exception in thread "main" com.google.cloud.runtimes.builder.exception.ArtifactNotFoundException: No deployable artifacts were found. Unable to proceed.
at com.google.cloud.runtimes.builder.buildsteps.PrebuiltRuntimeImageBuildStep.getArtifact(PrebuiltRuntimeImageBuildStep.java:77)
at com.google.cloud.runtimes.builder.buildsteps.RuntimeImageBuildStep.run(RuntimeImageBuildStep.java:50)
at com.google.cloud.runtimes.builder.BuildPipelineConfigurator.generateDockerResources(BuildPipelineConfigurator.java:104)
at com.google.cloud.runtimes.builder.Application.main(Application.java:147)

【问题讨论】:

  • 你更新你的 gcloud sdk 了吗?在部署之前尝试运行 mvn clean install 来更新依赖项。
  • 您是否能够使用 AppEngine 本地开发服务器在本地运行项目? dev_appserver.py [PATH_TO_YOUR_APP]dev_appserver.py app.yaml ?因为如果它在那里工作,那么它通常应该部署得很好

标签: java google-app-engine google-cloud-platform


【解决方案1】:

您可以尝试使用mvn clean package appengine:deploy 来清理 Maven 在构建过程中生成的文件和目录。

gcloud app deploy 命令和 maven deploy 的区别在于,maven 在部署之前构建并打包您的应用程序,而 gcloud 命令只是部署您的应用程序而不打包它。此外,gcloud 命令要求您指定要部署的文档。

在官方文档 [1] [2] 中,您可以找到有关如何使用每个命令部署应用程序的更多信息。

【讨论】:

    【解决方案2】:

    这些是部署到谷歌云应用引擎柔性环境的步骤:

    -将您的战争文件更改为jar。请参阅下面的文档

    https://cloud.google.com/appengine/docs/flexible/java/dev-java-only#prerequisites

    -把你的jar文件放到项目根目录下(projectName/file.jar)。

    -从您的项目目录运行“gcloud app deploy”。请参阅下面的文档

    https://cloud.google.com/appengine/docs/flexible/java/dev-java-only#deploying_your_app

    【讨论】:

      猜你喜欢
      • 2021-09-25
      • 2020-06-02
      • 1970-01-01
      • 2020-09-01
      • 2020-11-24
      • 1970-01-01
      • 2014-04-08
      • 2020-03-27
      • 2019-03-16
      相关资源
      最近更新 更多