eclipse 端点,生成的云端点缺少生成器

e5nqia27  于 2023-11-18  发布在  Eclipse
关注(0)|答案(3)|浏览(132)

我试图按照https://developers.google.com/eclipse/docs/endpoints-addentities的示例教程进行操作,但我一直在弄清楚如何在Eclipse中生成GameEndpoint.Builder类。
在按照上面的描述生成云端点之后,我创建了一个GameEndpoint类,但是没有GameEndpoint.Builder类。
GameEndpoint.Builder无法解析为类型
在这一点上我被难住了,我如何在Eclipse中生成GameEndpoint.Builder类,或者是什么阻止了它?

验证码

public class NewGameTask extends AsyncTask<Context, Integer, Long> {
    protected Long doInBackground(Context... contexts) {

        GameEndpoint.Builder endpointBuilder = new GameEndpoint.Builder(
                AndroidHttp.newCompatibleTransport(), new JacksonFactory(),
                new HttpRequestInitializer() {
                    public void initialize(HttpRequest httpRequest) {
                    }
                });
        GameEndpoint endpoint = CloudEndpointUtils.updateBuilder(
                endpointBuilder).build();
        try {
            Game game = new Game();
            game.setStart(Calendar.getInstance());

            Game result = endpoint.insertGame(game);
        } catch (IOException e) {
            e.printStackTrace();
        }
        return (long) 0;
    }
}

字符串

bq9c1y66

bq9c1y661#

我发现了我的问题后,看了这个视频从Google I/O 2013这是使用Android Studio,但它是一样的Eclipse大部分。
我在遵循https://developers.google.com/eclipse/docs/endpoints-addentities的错误是,你需要把你的实体类放到 MyApp-AppEngine 项目中,而不是你的 MyApp 项目中。
这是混乱的根源。如果它有助于那些在未来,这里是一个简短的细分我做了什么。

  • 将要添加到App Engine的 Entity 类放入 MyApp-AppEngine 项目中。
  • 右键单击您的类,然后转到Google>生成云端点客户端库
  • 右键单击您的 MyApp-AppEngine 项目,然后转到Google>生成云Enpoint客户端库
  • 新的引用将在您的 MyApp 项目中创建,您将在项目中引用这些引用以供使用。
nhhxz33t

nhhxz33t2#

注意这个答案是基于Android Studio的,但我相信它和Eclipse差不多。

我也有这个问题,但后来找到了原因。原来我导入的是我生成的Endpoint类,而不是端点API包。让我说清楚。当你将端点模块添加到你的项目时,你会在端点包中获得MyBeanMyEndpoint类。如果你看看guide将客户端连接到后端,EndpointsAsyncTask类使用:

private static MyApi myApiService = null;

字符串
注意它如何使用MyApi而不是MyBean现在我想知道它是从哪里得到的,但我只需要看看我的后端库:


的数据
标记为1的库是当你按照前面提到的指南操作时第一次添加到你的项目中的库。当我添加一个新类Student并自动生成云端点类时,第二个库也被添加了。
长话短说,你应该导入的是这个库,而不是类。

import com.package-name.backend.studentApi.StudentApi;


然后使用:

private static StudentApi myApiService = null;
...
StudentApi.Builder builder = new StudentApi.Builder(...)


而不是:

import com.package-name.backend.StudentEndpoint;
 ...
private static StudentEndpoint myApiService = null;

StudentEndpoint.Builder builder = new StudentEndpoint.Builder(...)

x6yk4ghg

x6yk4ghg3#

我在Android Studio中遇到了同样的问题。我从我的实体java bean中生成了我的端点类,但在创建AsyncTask时,现在可以获取Builder。
实际上(如果我像你一样使用游戏java bean),生成器不依赖于GameEndPoint,而是依赖于生成的GameApi类。
换句话说,我必须在AsyncTask类中添加这两个导入:
import com.examplepackage.backend.gameApi.GameApi; import com.examplepackage.backend.gameApi.model.Game;
而您编写的Gamejavabean和生成的GameEndpoint位于com.examplepackage.backend包下

相关问题