使用Google云应用程序引擎灵活快速启动数据存储区错误

时间:2017-03-24 12:02:01

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

我已使用以下链接开始使用Google Cloud Flexible: https://cloud.google.com/appengine/docs/flexible/java/quickstart

我尝试阅读所有自述文件并按照说明操作,但是当我尝试执行maven命令(mvn clean gcloud:deploy)以在loacalhost中部署时,我看到有关数据存储区的以下错误:

Caused by: com.google.datastore.v1.client.DatastoreException: Unexpected OK error code with HTTP status code of 401. Message: ., code=INTERNAL
    at com.google.datastore.v1.client.RemoteRpc.makeException(RemoteRpc.java:126)
    at com.google.datastore.v1.client.RemoteRpc.makeException(RemoteRpc.java:163)
    at com.google.datastore.v1.client.RemoteRpc.call(RemoteRpc.java:89)
    at com.google.datastore.v1.client.Datastore.runQuery(Datastore.java:108)
    at com.google.cloud.datastore.spi.DefaultDatastoreRpc.runQuery(DefaultDatastoreRpc.java:162)

任何帮助表示赞赏!

2 个答案:

答案 0 :(得分:1)

问题是数据存储模拟器没有运行。 您可以使用命令启动模拟器,为其设置环境变量,然后启动您的应用程序:

1)在单独的命令窗口中启动数据存储区:

gcloud beta emulators datastore start

2)设置环境变量:

gcloud beta emulators datastore env-init > set_vars.cmd && set_vars.cmd

3)使用mvn:

启动应用程序
mvn jetty:run-exploded

这些命令适用于Windows平台。详细信息如下: https://cloud.google.com/datastore/docs/tools/datastore-emulator

答案 1 :(得分:0)

我发现了什么问题。正如本link中所述,要在localhost中使用数据存储,您应该使用本地数据存储模拟器。所以我提到错误的原因是我没有设置本地数据存储模拟器,但我可以在app-engine中部署项目而没有任何错误。