将.war文件部署到Google App Engine Flexible Environment时,没有此类文件或目录错误

时间:2018-03-20 15:36:23

标签: java eclipse google-app-engine plantuml

我尝试将this PlantUML Server .war文件部署到GAE。我已按照Google的说明here,但我从Eclipse收到以下错误:

    (gcloud.app.deploy) Cloud build failed. Check logs at https://console.cloud.google.com/gcr/builds/39606ad7-fedf-4418-8944-4cadefccaedf?project=practice-area Failure status: UNKNOWN: Error Response: [2] Build failed; check build logs for details

当我检查链接上的日志时,我明白了:

starting build "39606ad7-fedf-4418-8944-4cadefccaedf"

FETCHSOURCE
Fetching storage object: gs://staging.practice-area.appspot.com/us.gcr.io/practice-area/appengine/default.20180320t172224:latest#1521559359013330
Copying gs://staging.practice-area.appspot.com/us.gcr.io/practice-area/appengine/default.20180320t172224:latest#1521559359013330...
/ [0 files][ 0.0 B/ 8.0 MiB] 
/ [1 files][ 8.0 MiB/ 8.0 MiB] 
-
Operation completed over 1 objects/8.0 MiB. 
BUILD
Starting Step #0
Step #0: Pulling image: gcr.io/gcp-runtimes/java/runtime-builder@sha256:abe30c228acd8514d83430452b5a45eedea568b55d02d4ddaa2a374b1b086dd8
Step #0: sha256:abe30c228acd8514d83430452b5a45eedea568b55d02d4ddaa2a374b1b086dd8: Pulling from gcp-runtimes/java/runtime-builder
Step #0: Digest: sha256:abe30c228acd8514d83430452b5a45eedea568b55d02d4ddaa2a374b1b086dd8
Step #0: Status: Downloaded newer image for gcr.io/gcp-runtimes/java/runtime-builder@sha256:abe30c228acd8514d83430452b5a45eedea568b55d02d4ddaa2a374b1b086dd8
Step #0: INFO - Identified Java artifact for deployment Artifact{type=WAR, path=/workspace/plantuml (1).war}
Step #0: INFO - Using base image 'gcr.io/google-appengine/jetty@sha256:dcfc5cf6401fc2ed99df12da8ee54f22e0e8e95247a239845ca4c513c0f42e11' for WAR artifact
Step #0: INFO - Generating Dockerfile at /workspace/Dockerfile
Step #0: INFO - Generating .dockerignore file at /workspace/.dockerignore
Finished Step #0
Starting Step #1
Step #1: Pulling image: gcr.io/cloud-builders/docker@sha256:e07e5c3acceaae1fe5f0d8eaf9718c7f53ffd35f8a7d6b2491af5a0838242261
Step #1: sha256:e07e5c3acceaae1fe5f0d8eaf9718c7f53ffd35f8a7d6b2491af5a0838242261: Pulling from cloud-builders/docker
Step #1: cf2c5e27174e: Already exists
Step #1: a7bc5eb395b5: Already exists
Step #1: a19c45128315: Already exists
Step #1: 23909d8a304f: Pulling fs layer
Step #1: 23909d8a304f: Verifying Checksum
Step #1: 23909d8a304f: Download complete
Step #1: 23909d8a304f: Pull complete
Step #1: Digest: sha256:e07e5c3acceaae1fe5f0d8eaf9718c7f53ffd35f8a7d6b2491af5a0838242261
Step #1: Status: Downloaded newer image for gcr.io/cloud-builders/docker@sha256:e07e5c3acceaae1fe5f0d8eaf9718c7f53ffd35f8a7d6b2491af5a0838242261
Step #1: Sending build context to Docker daemon 9.062MB

Step #1: Step 1/2 : FROM gcr.io/google-appengine/jetty@sha256:dcfc5cf6401fc2ed99df12da8ee54f22e0e8e95247a239845ca4c513c0f42e11
Step #1: sha256:dcfc5cf6401fc2ed99df12da8ee54f22e0e8e95247a239845ca4c513c0f42e11: Pulling from google-appengine/jetty
Step #1: Digest: sha256:dcfc5cf6401fc2ed99df12da8ee54f22e0e8e95247a239845ca4c513c0f42e11
Step #1: Status: Downloaded newer image for gcr.io/google-appengine/jetty@sha256:dcfc5cf6401fc2ed99df12da8ee54f22e0e8e95247a239845ca4c513c0f42e11
Step #1: ---> 6d61d7057b61
Step #1: Step 2/2 : COPY ./plantuml (1).war $APP_DESTINATION
Step #1: COPY failed: stat /var/lib/docker/tmp/docker-builder056091656/plantuml: no such file or directory
Finished Step #1
ERROR
ERROR: build step 1 "gcr.io/cloud-builders/docker@sha256:e07e5c3acceaae1fe5f0d8eaf9718c7f53ffd35f8a7d6b2491af5a0838242261" failed: exit status 1

我无法弄清楚如何解决这个问题。错误似乎是"没有这样的文件或目录"但是我无法弄清楚为什么会这样,部署过程是否应该创建所有必要的目录?

非常感谢任何输入。谢谢!

1 个答案:

答案 0 :(得分:0)

您必须从文件名中删除空格。尽量不要在文件名中使用空格,因为它们可能被误解为不同的参数。

将您的WAR名称从plantuml(1).war更改为plantuml(1).war将使其正常工作。