Eclipse和Appengine

时间:2014-10-15 12:45:14

标签: java eclipse google-app-engine servlets

我一直在使用Appengine尝试使用Google+ API。不幸的是,自从我开始研究我的项目以来,Appengine一直没有工作。最近,在尝试基于以下教程运行应用程序时遇到了一个主要问题:http://www.youtube.com/watch?v=tVIIgcIqoPw。错误如下:当尝试调用方法“线程中的异常”主“java.lang.UnsupportedClassVersionError:com / google / appengine / tools / enhancer / Enhance:不支持的major.minor版本时,ClassEnhancer”ASM“发生错误51.0" 。在尝试在Eclipse中“清理”项目后,我收到了错误。

以下是我正在使用的当前代码:

package com.example.myproject;

import com.google.api.client.extensions.appengine.http.UrlFetchTransport;
import com.google.api.client.http.HttpTransport;
import com.google.api.client.json.JsonFactory;
import com.google.api.client.json.jackson2.JacksonFactory;
import com.google.api.services.plus.Plus;
import com.google.api.services.plus.PlusRequestInitializer;
import com.google.api.services.plus.model.Activity;
import com.google.api.services.plus.model.ActivityFeed;

import java.io.IOException;
import java.io.Writer;
import java.util.List;

import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@SuppressWarnings("serial")
public class PlusBasicServlet extends HttpServlet {

    private static final String API_KEY = "AIzaSyBggyzruOQtog0A6HDlrxGvK2JdLV5ihNE";

    private static final long serialVersionUID = 1;

    public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
        HttpTransport httpTransport  = new UrlFetchTransport();
        JsonFactory jsonFactory = new JacksonFactory();

        Plus plus = new Plus.Builder(httpTransport, jsonFactory, null).setApplicationName("").setGoogleClientRequestInitializer(new     PlusRequestInitializer(API_KEY)).build();
        ActivityFeed myActivityFeed = plus.activities().search("Google").execute();
        List<Activity> myActivities = myActivityFeed.getItems();

        resp.setContentType("text/html");
        resp.setStatus(200);
        Writer writer = resp.getWriter();
        writer.write("<url>");
        for(Activity a: myActivities){
            writer.write("<li>" + a.getTitle() + "</li>");
        }
        writer.write("</ul>");

    }
}

非常感谢任何建议或帮助。

1 个答案:

答案 0 :(得分:1)

发生此错误是因为您使用1.7以下的java版本。

使用JRE 1.7运行您的项目,它会很好。

修改

Google App Engine尚不支持java 8,正如您在this issue上看到的那样。

即将推出。

所以你必须降级你的Java环境。