如何建立一个java后端Firebase数据库连接

时间:2017-07-25 02:19:25

标签: java maven firebase firebase-realtime-database

我想用java将条目插入我的Firebase数据库(java环境中的java NOT)。这甚至可能吗?

如果可以,请帮我弄清楚为什么我会收到此错误:

  

线程中的异常" main" java.lang.NoSuchMethodError:com.google.firebase.FirebaseOptions $ Builder.setCredential(Lcom / google / firebase / auth / FirebaseCredential;)Lcom / google / firebase / FirebaseOptions $ Builder;

问题发生在eclipse中我的maven项目下面的`setCredential行?

    try {
        FileInputStream serviceAccount = new FileInputStream(file);
        FirebaseOptions options = new FirebaseOptions.Builder()
                .setCredential(FirebaseCredentials.fromCertificate(serviceAccount))
                .setDatabaseUrl(url)
                .build();
        FirebaseApp.initializeApp(options);
    } catch (FileNotFoundException e) {
        System.out.println("ERROR: invalid service account credentials. See README.");
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    // Shared Database reference
    DatabaseReference database = FirebaseDatabase.getInstance().getReference();

1 个答案:

答案 0 :(得分:0)

从错误消息中看起来你包含了错误的SDK,可能是Android平台的SDK。请务必按照Firebase documentation on including the Admin SDK中的说明操作。从那里:

  

Firebase Admin Java SDK发布到Maven中央存储库。要安装库,请在build.gradle文件中将其声明为依赖项:

dependencies {
  compile 'com.google.firebase:firebase-admin:5.2.0'
}
     

如果您使用Maven构建应用程序,则可以将以下依赖项添加到pom.xml

<dependency>
  <groupId>com.google.firebase</groupId>
  <artifactId>firebase-admin</artifactId>
  <version>5.2.0</version>
</dependency>