如何将文件输入流正确添加到Firebase JSON文件中

时间:2017-07-08 01:30:08

标签: java json firebase firebase-realtime-database firebase-admin

我的JSON文件位于项目根文件夹中,我已正确设置依赖项,现在我尝试添加JSON文件使用Firebse自己here提供的说明。

以下是我的主要java文件中的代码:

import com.google.firebase.FirebaseApp;
import com.google.firebase.FirebaseOptions;
import com.google.firebase.auth.FirebaseCredentials;
import java.io.File;
import java.lang.management.ManagementFactory;
import java.lang.management.OperatingSystemMXBean;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.lang.management.RuntimeMXBean;
import java.io.*;
import java.net.*;
import java.util.*;
import java.io.LineNumberReader;
import java.lang.management.ManagementFactory;
import com.sun.management.OperatingSystemMXBean;
import java.lang.management.ManagementFactory;
import java.util.Random;

 public class Climate {
    public static void main(String [] args){
          FileInputStream serviceAccount = new FileInputStream("serviceAccountKey.json");


          FirebaseOptions options = new FirebaseOptions.Builder()
                .setCredential(FirebaseCredentials.fromCertificate(serviceAccount))
                .setDatabaseUrl("https://*retracted*.firebaseio.com/")
                .build();

          FirebaseApp.initializeApp(options);
    }
 }

这就是它在IDE enter image description here

中的样子

这是它旁边的消息:enter image description here

它说文件没找到,但文件在那里我向你保证,我真的在这里愚蠢,请原谅我的无能我是新的firebase ...任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您需要通过“try and catch”或使用throws例外来包围该语句。

 public class Climate {
    public static void main(String [] args){
          FileInputStream serviceAccount = null;
        try {
            serviceAccount = new FileInputStream("serviceAccountKey.json");
            FirebaseOptions options = new FirebaseOptions.Builder()
                    .setCredential(FirebaseCredentials.fromCertificate(serviceAccount))
                    .setDatabaseUrl("https://*retracted*.firebaseio.com/")
                    .build();
            FirebaseApp.initializeApp(options);
        } catch (FileNotFoundException ex) {
            Logger.getLogger(Climate.class.getName()).log(Level.SEVERE, null, ex);
        } finally {
            try {
                serviceAccount.close();
            } catch (IOException ex) {
                Logger.getLogger(Climate.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }
 }