Администратор Firebase + Java + java .lang.NoSuchMethodError: com.google.cloud.ServiceOptions.getQuotaProjectId () - PullRequest
0 голосов
/ 06 августа 2020

Я следую https://firebase.google.com/docs/storage/admin/start?authuser=0 руководству по настройке Firebase Admin (Java), при запуске Java Class он нажимает «java .lang.NoSuchMethodError: com. google.cloud.ServiceOptions.getQuotaProjectId ()", я действительно не знаю, чего не хватает, моя учетная запись проекта - Blaze account

serviceAccount. json получить от "firebase-adminsdk-xxxxx@xxxxxxxx.iam.gserviceaccount.com"

Кто-нибудь может помочь в этом? Я уже отлаживаю несколько дней, но все еще сталкиваюсь с той же проблемой ~ (T_T)

Java Class


import com.google.auth.oauth2.GoogleCredentials;
import com.google.cloud.storage.StorageOptions;
import com.google.firebase.FirebaseApp;
import com.google.firebase.FirebaseOptions;

public class MainClass {
    
    public static void main ( String[ ] args ) {
        
        try {

            GoogleCredentials credentials = GoogleCredentials.fromStream( new FileInputStream( "/Users/user/serviceAccount.json" ) );
            FirebaseOptions options = new FirebaseOptions.Builder()
                .setCredentials( credentials )
                .setStorageBucket( "xxxxxxxx.appspot.com" )
                .build();
            FirebaseApp.initializeApp(options);
            
            Bucket bucket = StorageClient.getInstance().bucket();
            
            
        } catch ( Exception ex ) {
            
            ex.printStackTrace( );  
            
        }
                
    }
    
}

Error Exception

Exception in thread "main" java.lang.NoSuchMethodError: com.google.cloud.ServiceOptions.getQuotaProjectId()Ljava/lang/String;
    at com.google.cloud.http.HttpTransportOptions.getInternalHeaderProviderBuilder(HttpTransportOptions.java:179)
    at com.google.cloud.http.HttpTransportOptions.getHttpRequestInitializer(HttpTransportOptions.java:151)
    at com.google.cloud.storage.spi.v1.HttpStorageRpc.<init>(HttpStorageRpc.java:105)
    at com.google.cloud.storage.StorageOptions$DefaultStorageRpcFactory.create(StorageOptions.java:55)
    at com.google.cloud.storage.StorageOptions$DefaultStorageRpcFactory.create(StorageOptions.java:49)
    at com.google.cloud.ServiceOptions.getRpc(ServiceOptions.java:518)
    at com.google.cloud.storage.StorageOptions.getStorageRpcV1(StorageOptions.java:121)
    at com.google.cloud.storage.StorageImpl.<init>(StorageImpl.java:114)
    at com.google.cloud.storage.StorageOptions$DefaultStorageFactory.create(StorageOptions.java:45)
    at com.google.cloud.storage.StorageOptions$DefaultStorageFactory.create(StorageOptions.java:39)
    at com.google.cloud.ServiceOptions.getService(ServiceOptions.java:498)
    at MainClass.main(MainClass.java:21)

Maven


        <dependency>
          <groupId>com.google.firebase</groupId>
          <artifactId>firebase-admin</artifactId>
          <version>6.15.0</version>
        </dependency>
        
        <dependency>
            <groupId>com.google.cloud</groupId>
            <artifactId>google-cloud-core</artifactId>
            <version>1.93.7</version>
        </dependency>
                
        
        <dependency>
            <groupId>com.google.auth</groupId>
            <artifactId>google-auth-library-oauth2-http</artifactId>
            <version>0.21.1</version>
        </dependency>
...