В настоящее время я устанавливаю Firebase cloud Firestore в java, используя IntelliJ в качестве SDK. В документации Firebase сказано, что нужен ключ учетной записи службы, который является файлом json. Я использовал метод FileInputStream для получения этого файла json, и у меня нет проблем при получении этого файла, выполняющего программу, но когда я экспортирую его как библиотеку JAR, проект, использующий этот JAR, не находит ключ учетной записи службы. , а затем он не может соединиться с моей firebase.
Теперь я могу подключиться к firebase, но я хочу выполнить весь этот процесс в библиотеке, которую я делаю. Я показываю вам код, который получает мой файл.
public InputStream obtainInputStream(String pathFile) throws ReadFileException {
InputStream inputStream;
try {
// Create File Input Stream
inputStream = new FileInputStream(pathFile);
} catch (FileNotFoundException e) {
// Get Input Stream
inputStream = getClass().getResourceAsStream(pathFile);
// Check if File Exists
if(inputStream == null) {
throw new ReadFileException(String.format("Error Find File %s", pathFile));
}
}
return inputStream;
}
Когда я экспортирую весь свой код как файл JAR, он не находит файл и показывает исключение FileNotFoundException, даже когда я сохраняю файл в ресурсахпапки. Могу ли я что-нибудь сделать в файле сборки Gradle или использовать эквивалентный метод? Я хочу использовать этот проект как Libray в другом проекте.