Я развернул приложение JVM в облачной среде Google, которое использует Firebase Admin SDK для отправки уведомлений в Firebase Cloud Messaging. Все отлично работает локально, используя GOOGLE_APPLICATION_CREDENTIALS. Развернутое приложение, однако, выдает следующие ошибки:
java.lang.IllegalArgumentException: Project ID is required to access messaging service. Use a service account credential or set the project ID explicitly via FirebaseOptions. Alternatively you can also set the project ID via the GOOGLE_CLOUD_PROJECT environment variable.
Я создаю экземпляр FirebaseMessaging как:
FirebaseMessaging.getInstance(
FirebaseApp.initializeApp(
FirebaseOptions.Builder().setCredentials(
GoogleCredentials.getApplicationDefault()
).build()
Я развернул экземпляр Cloud Run с учетной записью службы, которая имеет права администратора разрешения для Cloud Run.
Насколько я понимаю, приложение, развернутое в любой службе GCP, автоматически получает учетные данные приложения. Есть ли разница в комбинации Cloud Run и Firebase Admin SDK?
Любая помощь будет высоко ценится.