Google Cloud Endpoints Framework V2的AppEngine本地开发服务器无法正常工作

Ale*_*kov 5 java google-app-engine gradle google-cloud-endpoints

我无法在本地AppEngine开发服务器上运行Google Endpoints Framework V2。

为了演示一个问题,我创建了一个gradle 演示项目 。如果将其部署到真实的AppEngine标准环境实例中,则效果很好,但不适用于本地dev服务器。

重现步骤:

  1. 如果希望更改默认的Appengine服务名称(framework-v2-someapi)并在步骤5上也更改该名称,请编辑appengine-web.xml。
  2. gcloud身份验证登录
  3. gcloud配置设置项目PROJECT_ID
  4. ./gradlew appengineDeploy
  5. gcloud应用浏览-s framework-v2-someapi
  6. 在新打开的浏览器窗口中,单击API链接。
  7. 使用API​​ Explorer并检查服务> someapi API v1> someapi.method.getHash是否正常。
  8. ./gradlew appengine启动并打开http:// localhost:8080尝试执行相同的语言环境并获取错误。

最终得到了

2017年1月24日,下午7:25:40 com.google.appengine.tools.development.devappserver2.RemoteApiDelegate日志SEVERE:[1485285940023000] javax.servlet.ServletContext日志:不可用com.google.appengine.tools.remoteapi.RemoteApiException:响应是python例外:cgoogle.appengine.runtime.apiproxy_errors ApplicationError

我的问题是如何在本地运行Google Endpoints Framework V2?

sai*_*iyr 0

build.gradle变革

compile 'com.google.endpoints:endpoints-management-control-appengine:1.0.0'
Run Code Online (Sandbox Code Playgroud)

compile 'com.google.endpoints:endpoints-management-control-appengine:1.0.1'
Run Code Online (Sandbox Code Playgroud)

  • 最终我发现 dev_appserver.py 在 google-cloud-sdk-app-engine-java 和 appengin-java-sdk 最新捆绑包中是不同的。Gcloud 版本需要 appengine-web.xml 中已弃用的 <version> 标记才能运行端点。 (2认同)