firebase / firebase/firebase-admin-java

Deprecation warnings with Java OpenJDK 24 - sun.misc.Unsafe usage in Firebase Admin SDK

Open
#1,100 1 comment 2 reactions 0 assignees View on GitHub
api: core
Dominant language
Java
Stars
620
Forks
305
Avg merge
3h 23m
Merged PRs (30d)
1

Description

### [READ] Step 1: Are you in the right place?

* For issues or feature requests related to __the code in this repository__
file a Github issue.
* If this is a __feature request__ make sure the issue title starts with "FR:".
* For general technical questions, post a question on [StackOverflow](http://stackoverflow.com/)
with the firebase tag.
* For general Firebase discussion, use the [firebase-talk](https://groups.google.com/forum/#!forum/firebase-talk)
google group.
* For help troubleshooting your application that does not fall under one
of the above categories, reach out to the personalized
[Firebase support channel](https://firebase.google.com/support/).

### [REQUIRED] Step 2: Describe your environment

* Operating System version: macOS Sequoia 15.5
* Firebase SDK version: 9.5.0
* Library version: 9.5.0
* Firebase Product: Firebase Admin
* Java version: OpenJDK 24

### [REQUIRED] Step 3: Describe the problem

Create a Java application using Firebase Admin Authentication
Use Java OpenJDK 24 as the runtime
Run the application
Observe deprecation warnings in the console output

What happened?
When running a Firebase Admin Authentication application with Java OpenJDK 24, the following deprecation warnings are displayed:
WARNING: A terminally deprecated method in sun.misc.Unsafe has been called
WARNING: sun.misc.Unsafe::objectFieldOffset has been called
WARNING: Please consider reporting this to the maintainers of class com.google.common.util.concurrent.AbstractFuture$UnsafeAtomicHelper
WARNING: sun.misc.Unsafe::objectFieldOffset will be removed in a future release
This appears to be related to the Firebase Admin SDK's dependency on Guava's AbstractFuture$UnsafeAtomicHelper class, which uses the deprecated sun.misc.Unsafe::objectFieldOffset method.
Expected behavior:
The Firebase Admin SDK should work without deprecation warnings on supported Java versions, or provide guidance on compatible Java versions.
Relevant Code:
java// Basic Firebase Admin initialization that triggers the warnings
FirebaseOptions options = FirebaseOptions.builder()
.setCredentials(GoogleCredentials.getApplicationDefault())
.build();

FirebaseApp.initializeApp(options);

// Any subsequent Firebase Admin operations will show the warnings
Additional context:

The warnings appear to be coming from the Guava library dependency used by Firebase Admin SDK
This may impact future compatibility when Java removes the deprecated sun.misc.Unsafe methods
The application functions correctly despite the warnings

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the Firebase Admin Authentication initialization with OpenJDK 24 and inspect the Guava AbstractFuture$UnsafeAtomicHelper dependency named in the report. Determine whether the warning can be resolved through the SDK dependency or requires compatibility guidance; done means the supported setup is documented or the warnings no longer appear.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
authentication, backend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.