我正在尝试在Java Web Application项目中添加Google登录按钮。我正在尝试使用GoogleIdTokenVerifier在Servlet后端接收ID令牌,请遵循Google指南:https://developers.google.com/identity/sign-in/web/backend-auth。 Eclipse的一切都可以,但是使用Tomcat v9运行我的项目并到达要点:
final HttpTransport transport = new NetHttpTransport();
final JsonFactory jsonFactory = new GsonFactory();// tried it with jsonFactory = new JsonFactory();
GoogleIdTokenVerifier verifier = new GoogleIdTokenVerifier.Builder(transport, jsonFactory).setAudience(id_singleton).build();
Eclipse给我这个错误:
SEVERE: Servlet.service() for servlet [controller.GoogleTokenSignIn] in context with path [/Project] threw exception [Servlet execution threw an exception] with root cause java.lang.ClassNotFoundException: com.google.api.client.googleapis.auth.oauth2.GoogleIdTokenVerifier$Builder.
我将所有堆栈溢出都移了过来,我找到了一个答案,说要更新jar。我有Google api release 1.30.9 jars和1.30.6或oauth,仍然出现相同的错误。
手动提取导致问题的jar文件并将其解压缩,获取源代码并将其放在项目的同一目录/ project / src中。应该可以。