【问题标题】:Java Firebase-Admin missing GoogleCredentialsJava Firebase-Admin 缺少 GoogleCredentials
【发布时间】:2018-08-05 20:38:45
【问题描述】:

我想创建一个可以访问我的 Firebase 数据库的服务器应用程序。

我遵循了本指南:https://firebase.google.com/docs/admin/setup#initialize_the_sdk

但我收到以下错误:

无法解析 GoogleCredentials

FileInputStream serviceAccount = new 
   FileInputStream("path/to/serviceAccountKey.json");

FirebaseOptions options = new FirebaseOptions.Builder()
   .setCredentials(GoogleCredentials.fromStream(serviceAccount))
   .setDatabaseUrl("https://<DATABASE_NAME>.firebaseio.com/")
   .build();

FirebaseApp.initializeApp(options);

编辑:

导入以下库后:

  • org.json.jar
  • netty-all-4.0.0.final.jar
  • google-http-client-1.16.0-rc.jar
  • google-http-client-1.16.0-rc-sources.jar
  • firebase-admin-5.9.0.jar
  • google-auth-library-oauth2-http-0.9.0.jar
  • google-auth-library-credentials-0.9.0.jar
  • google-api-client-1.23.0.jar
  • google-api-client-1.4.1-beta.jar
  • guava-24.0-jre.jar
  • google-http-client-jackson2-1.23.0.jar
  • jackson-core-2.9.4.jar
  • slf4j-api-1.7.25.jar
  • slf4j-jdk14-1.7.25.jar
  • api-common-1.3.9.jar

我陷入了这个错误:

2018 年 2 月 27 日下午 2:15:33 com.google.firebase.database.logging.LogWrapper 错误 SCHWERWIEGEND:Firebase 数据库运行循环 (5.9.0) 中未捕获的异常。请向 firebase-database-client@google.com 报告 java.lang.NoSuchMethodError: io.netty.channel.nio.NioEventLoopGroup.(ILjava/util/concurrent/Executor;)V 在 com.google.firebase.database.connection.NettyWebSocketClient.(NettyWebSocketClient.java:71) 在 com.google.firebase.database.connection.WebsocketConnection$DefaultWSClientFactory.newClient(WebsocketConnection.java:435) 在 com.google.firebase.database.connection.WebsocketConnection.(WebsocketConnection.java:80) 在 com.google.firebase.database.connection.WebsocketConnection.(WebsocketConnection.java:68) 在 com.google.firebase.database.connection.Connection$DefaultWebsocketConnectionFactory.newConnection(Connection.java:297) 在 com.google.firebase.database.connection.Connection.(Connection.java:72) 在 com.google.firebase.database.connection.Connection.(Connection.java:57) 在 com.google.firebase.database.connection.PersistentConnectionImpl$DefaultConnectionFactory.newConnection(PersistentConnectionImpl.java:1303) 在 com.google.firebase.database.connection.PersistentConnectionImpl.openNetworkConnection(PersistentConnectionImpl.java:547) 在 com.google.firebase.database.connection.PersistentConnectionImpl.access$800(PersistentConnectionImpl.java:37) 在 com.google.firebase.database.connection.PersistentConnectionImpl$1$1.onSuccess(PersistentConnectionImpl.java:500) 在 com.google.firebase.database.core.Context$1$1.onSuccess(Context.java:67) 在 com.google.firebase.database.core.JvmAuthTokenProvider.getToken(JvmAuthTokenProvider.java:66) 在 com.google.firebase.database.core.Context$1.getToken(Context.java:62) 在 com.google.firebase.database.connection.PersistentConnectionImpl$1.run(PersistentConnectionImpl.java:490) 在 com.google.firebase.database.connection.util.RetryHelper$1.run(RetryHelper.java:93) 在 java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 在 java.util.concurrent.FutureTask.run(FutureTask.java:266) 在 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) 在 java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 在 java.lang.Thread.run(Thread.java:745)

【问题讨论】:

  • 请提供您遇到的确切错误。粘贴到这里。
  • 确保你有正确的导入:import com.google.auth.oauth2.GoogleCredentials;

标签: java firebase authentication credentials firebase-admin


【解决方案1】:

您需要 Netty 4.1.x。我建议依赖 4.1.17.Final,这是 Admin SDK 所依赖的。您的依赖管理工具(Maven、Gradle 等)应该会为您处理这个问题。

【讨论】:

  • 谢谢,将 netty-all-4.0.0.final.jar 更改为 netty-all-4.1.17.final.jar 解决了最后一个错误,现在它可以工作了。
【解决方案2】:

下载此 JAR 并将其包含为外部库

https://mvnrepository.com/artifact/io.netty/netty-all/4.0.0.Final

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-27
    • 1970-01-01
    • 1970-01-01
    • 2013-09-14
    • 2013-07-31
    • 2017-03-11
    • 2020-05-09
    相关资源
    最近更新 更多