Java: невозможно получить доступ к файлу класса com.google.auth.Credentials, поскольку com.google.auth.Credentials не найден - PullRequest
0 голосов
/ 05 октября 2018

Я использую Firebase Admin SDK, и я получаю эту ошибку во время выполнения:

Error:(22, 36) java: cannot access com.google.auth.Credentials
class file for com.google.auth.Credentials not found

Это конструктор, который выдает ошибку

import com.google.auth.oauth2.GoogleCredentials;
import com.google.firebase.FirebaseApp;
import com.google.firebase.FirebaseOptions;
import com.google.firebase.database.*;

import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;

class Database{

private FirebaseDatabase firebaseDatabase;

Database(){

    InputStream serviceAccount = Database.class.getResourceAsStream("reading-incentive-firebase-adminsdk-n556s-1b742e4b58.json");

    FirebaseOptions options;
    try {
        options = new FirebaseOptions.Builder()
                .setCredentials( GoogleCredentials.fromStream(serviceAccount))
                .setDatabaseUrl("https://reading-incentive.firebaseio.com")
                .build();
        FirebaseApp.initializeApp(options);
    } catch (IOException e) {
        e.printStackTrace();
        System.out.println("Error loading database");
    }

    firebaseDatabase = FirebaseDatabase.getInstance();

}

}

это строка 22

.setCredentials (GoogleCredentials.fromStream (serviceAccount))

Я использую Java-SDK 1.8 в IntelliJ вместе с Gradle.Я прочитал другие посты и прочитал, что использование SDK 1.8 над 1.7 выдает ошибку, но я не могу найти решение.Вот мой файл build.gradle ...

group 'src'
version '1.0-SNAPSHOT'

apply plugin: 'java'

sourceCompatibility = 1.8

repositories {
    mavenCentral()
}

dependencies {
    testCompile group: 'junit', name: 'junit', version: '4.12'
    implementation 'com.google.firebase:firebase-admin:6.5.0'
}

Спасибо за любую помощь.

1 Ответ

0 голосов
/ 05 октября 2018

У меня была такая же проблема некоторое время назад, когда я пытался сделать интеграцию с Firebase в нашем проекте движка приложений.Это вызвано некой временной зависимостью, которая присутствует в вашем приложении в библиотеках Google.

Пожалуйста, попробуйте эти вещи,

, если вы используете более низкую версию appengine-api, обновите ее до appengine-api-1.0-sdk-1.9.64.jar или выше.

, затем проверьте свои зависимости.если вы используете один из них,

google-oauth-client-1.22.0.jar
google-oauth-client-appengine-1.22.0.jar
google-oauth-client-servlet-1.22.0.jar

, это может быть конфликтом.попробуйте удалить их (они могут вам не понадобиться).Надеюсь, поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...