gpt4 book ai didi

java - Google Cloud Endpoints - API 未更新

转载 作者:搜寻专家 更新时间:2023-11-01 03:39:43 27 4
gpt4 key购买 nike

我一直在尝试使用 Google Cloud Endpoints (Java),但在部署到 App Engine 后(同时使用 Eclipse + Google 插件和 Android Studio),我无法更新 API。

我基于名为 Process(使用 JPA 注释)的类创建了一个端点。它位于我的包中(比方说:com.example)。我第一次部署它时不小心导入了错误的类(java.lang.Process 而不是我的 com.example.Process)。因此,当我在 API 资源管理器中测试其中一种方法时出现此错误:

com.google.api.server.spi.SystemService invokeServiceMethod: cause={0}
javax.persistence.PersistenceException: No meta data for java.lang.Process. Perhaps you need to run the enhancer on this class?

然后我更正了导入,重新生成了客户端库并将应用程序重新部署到 App Engine,但我仍然遇到同样的错误。好像 App Engine 仍然认为我使用的是 java.lang.Process 而不是我的 Process 类。

我还进行了其他更改。像类成员变量类型和方法名一样重新部署。但是 App Engine 似乎没有注意到这些变化。

我读到 API Explorer 如何“暴力缓存”,所以我尝试清除缓存,在另一个浏览器中打开,甚至在另一台 PC 上打开。还是什么都没有。

另外,我打开了位于 https://.appspot.com/_ah/api/discovery/v1/apis//v1/rest 的 api 的发现文件我注意到我更改的变量类型仍列为旧类型。

我检查了我的部署日志。他们看起来都不错:

2013-07-06 18:59:59.960 /_ah/spi/BackendService.getApiConfigs 200 291ms 14kb
I 2013-07-06 18:59:59.706 com.google.api.server.spi.BackendService getApiConfigs: apiConfigDir=/base/data/home/apps/s~<my-app>/1.368601601499931812/WEB-INF
I 2013-07-06 18:59:59.707 com.google.api.server.spi.BackendService getApiConfigs: apiConfigFile=/base/data/home/apps/s~<my-app>/1.368601601499931812/WEB-INF/<my-api-name>-v1.api
I 2013-07-06 18:59:59.713 com.google.api.server.spi.BackendService getApiConfigs: apiConfigFile=/base/data/home/apps/s~<my-app>/1.368601601499931812/WEB-INF/messageEndpoint-v1
I 2013-07-06 18:59:59.740 com.google.api.server.spi.BackendService getApiConfigs: apiConfigFile=/base/data/home/apps/s~<my-app>/1.368601601499931812/WEB-INF/deviceinfoendpoint

在管理日志中:

2013-07-06 18:59:35 <me>    Successfully updated API configuration  version=1
2013-07-06 18:59:35 <me> Completed update of a new default version version=1.2013-07-06T21:59:30Z
2013-07-06 18:59:32 <me> Deployed a new version version=1.2013-07-06T21:59:30Z

有人知道吗?提前致谢。

最佳答案

您的 .api 文件似乎没有正确重新生成。如果删除 .api 文件,它们是否会在加载到开发中或加载到 App Engine 时重新生成?

使用更新信息重新创建 .api 文件的常见原因(即我过去犯的错误):

  • 不允许使用原语和枚举。您必须传回一个 Bean。
  • API 方法没有注释
  • API 方法是“私有(private)的”而不是“公共(public)的”

关于java - Google Cloud Endpoints - API 未更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17507770/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com