在过去的几周中,我一直在使用 GAE/J Google Cloud Endpoints 开发应用程序。我创建了自定义端点(使用批注),尽管我遇到了很多问题,但我可以解决它们,并且一切工作都很好。
但是,现在(2013年4月22日),我尝试在终结点方法中进行更改,突然 Google Eclipse插件不再生成客户端库了!
我试图从我的项目中删除所有生成的api文件,但是没有任何效果。我什至再次下载了Eclipse,安装了所有最新版本的GPE和GAE SDK,并从头开始了一个新项目,但是我遇到了同样的错误...

编辑:绝对尝试 EVERYTHING 之后,看来Google的终端一定有问题。看来GPE使用的是CloudClientLibGenerator,至少在最近没有使用过...
[75小时...]
现在我想知道:

  • 如果他们在本地拥有所有必需的信息(代码,库等),为什么他们到底需要云生成器来生成端点的代码?还是没有?
  • 我正在使用GAE的免费版本,正在为大学开发一个应用程序(我的MSc最终项目),但是如果我正在开发一个真正的为GAE付款的应用程序怎么办?这不是太伪劣吗?

  • 无论如何,我认为这个词是“终结点”和“终结点”。

    注意:我已经在Google Code中打开this issue
    编辑:来自Google Project成员的回复:“目前一般而言,端点存在一个问题,这使库生成中的任何当前或先前的问题变得模糊。解决当前问题后,我将进行更新。”
    “我们正在努力尽快解决问题。一旦问题解决,我们将发布更新。”
    更新:一些用户现在在上面的问题中发表评论,指出问题已解决!不过,谷歌没有官方评论。不幸的是我暂时无法检查...

    可能的解决方法:
    您必须更改为GAE SDK先前版本的 1.7.5 1.7.6 都可以使用。您可以从here下载Java版本。
    我试过了,端点库生成正在工作!!!还有开发服务器中的API Explorer,因此我们可以在等待错误修复的同时继续进行开发,根据Google团队的说法,明天会发生什么 ...
    突然我已经部署的端点不起作用了,又重新起作用了! (尽管客户端一代仍无法使用SDK 1.7.7)
    编辑:从谷歌他们说从命令行生成也正在工作。

    尝试生成客户端库时引发的异常的Stacktrace(在GPE错误日志中):
    java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:601)
        at com.google.gdt.eclipse.appengine.swarm.wizards.helpers.SwarmApiCreator.createClientLibFromApiConfig(SwarmApiCreator.java:121)
        at com.google.gdt.eclipse.appengine.swarm.wizards.helpers.SwarmApiCreator.createSwarmApi(SwarmApiCreator.java:242)
        at com.google.gdt.eclipse.appengine.swarm.wizards.helpers.SwarmServiceCreator.create(SwarmServiceCreator.java:364)
        at com.google.gdt.eclipse.appengine.swarm.wizards.GenerateSwarmApiAction$1.run(GenerateSwarmApiAction.java:84)
        at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:464)
        at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372)
        at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:507)
        at com.google.gdt.eclipse.appengine.swarm.wizards.GenerateSwarmApiAction.run(GenerateSwarmApiAction.java:80)
        at org.eclipse.ui.internal.PluginAction.runWithEvent(PluginAction.java:251)
        at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
        at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
        at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
        at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
        at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
        at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4169)
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3758)
        at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1053)
        at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
        at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:942)
        at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:86)
        at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:588)
        at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
        at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:543)
        at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
        at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
        at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
        at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:601)
        at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
    Caused by: com.google.appengine.repackaged.com.google.api.client.http.HttpResponseException: 400 Bad Request
    {"error": {"message": "Bad Request", "code": 400, "errors": [{"message": "api error", "debug_info": "Could not parse api"}]}}
        at com.google.appengine.repackaged.com.google.api.client.http.HttpRequest.execute(HttpRequest.java:1155)
        at com.google.api.server.spi.tools.CloudClientLibGenerator.postRequest(CloudClientLibGenerator.java:52)
        at com.google.api.server.spi.tools.CloudClientLibGenerator.generateClientLib(CloudClientLibGenerator.java:43)
        ... 41 more
    

    最佳答案

    现在,此问题已在GPE 3.2.3和服务端修复。您现在可以使用App Engine 1.7.7。

    仍然存在一个问题:

    https://code.google.com/p/google-plugin-for-eclipse/issues/detail?id=191

    它将在星期一固定。

    09-17 17:56