user2181948
user2181948

Reputation: 1938

Firebase Admin SDK: NoSuchMethodError for setCredential()

My application uses the Firebase Admin SDK for Java (recently upgraded from the Firebase Server SDK). It has worked correctly while testing on the local environment, however after deploying it to Google App Engine from Eclipse, the logs are showing this error:

com.google.api.server.spi.SystemService invokeServiceMethod: exception occurred while calling backend method
java.lang.NoSuchMethodError: com.google.firebase.FirebaseOptions$Builder.setCredential(Lcom/google/firebase/auth/FirebaseCredential;)Lcom/google/firebase/FirebaseOptions$Builder;

Can anyone advise? I have checked pom.xml on the server and I can see that the firebase-admin SDK dependency was uploaded successfully:

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

Upvotes: 0

Views: 473

Answers (2)

dar0x
dar0x

Reputation: 361

I had the same issue on Tomcat 8.0 on a dev machine (Windows 10). I had just migrated firebase-admin from 4.1.7 version to the latest one (6.11.0), so there was somewhere an old firebase-admin-4.1.7.jar.

Hence that's what I did to fix:

  • find and delete any copy of firebase-admin-4.1.7.jar from my dev machine (check lib/ folders)
  • remove webapp from Tomcat Server
  • Maven Update
  • Project Clean

Upvotes: 0

Kohei TAMURA
Kohei TAMURA

Reputation: 5122

You may have to upgrade Firebase version to 4.1.0 or later. com.google.firebase.FirebaseOptions$Builder.setCredential() has been introduced since version 4.1.0.

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

Upvotes: 1

Related Questions