diff --git a/.github/workflows/node-test.yml b/.github/workflows/node-test.yml index fcb46816eb9..f088faa2e79 100644 --- a/.github/workflows/node-test.yml +++ b/.github/workflows/node-test.yml @@ -84,7 +84,7 @@ jobs: # - name: Setup Java JDK # uses: actions/setup-java@v3.3.0 # with: - # java-version: 17 + # java-version: 21 # distribution: temurin # - uses: actions/checkout@v4 @@ -188,6 +188,11 @@ jobs: node-version: ${{ matrix.node-version }} cache: npm cache-dependency-path: npm-shrinkwrap.json + - name: Setup Java JDK + uses: actions/setup-java@v3.3.0 + with: + java-version: 21 + distribution: temurin - name: Setup Chrome uses: browser-actions/setup-chrome@v1.7.2 with: @@ -247,7 +252,7 @@ jobs: - name: Setup Java JDK uses: actions/setup-java@v3.3.0 with: - java-version: 17 + java-version: 21 distribution: temurin - uses: actions/checkout@v4 diff --git a/CHANGELOG.md b/CHANGELOG.md index 4ffa9bd0696..47d045bda89 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1 +1,2 @@ - Add a confirmation in `firebase init dataconnect` before asking for app idea description. (#9282) +- [BREAKING] Removes support for running emulators with Java versions prior to 21. diff --git a/src/emulator/commandUtils.ts b/src/emulator/commandUtils.ts index 43cd9a72b05..843ae373d5e 100644 --- a/src/emulator/commandUtils.ts +++ b/src/emulator/commandUtils.ts @@ -589,5 +589,5 @@ export async function checkJavaMajorVersion(): Promise { export const MIN_SUPPORTED_JAVA_MAJOR_VERSION = 21; export const JAVA_DEPRECATION_WARNING = - "firebase-tools will drop support for Java version < 21 soon in firebase-tools@15. " + + "firebase-tools no longer supports Java version before 21. " + "Please install a JDK at version 21 or above to get a compatible runtime."; diff --git a/src/emulator/controller.ts b/src/emulator/controller.ts index 88004d71783..9a9dbbe895f 100755 --- a/src/emulator/controller.ts +++ b/src/emulator/controller.ts @@ -298,8 +298,7 @@ export async function startAll( const deprecationNotices: string[] = []; if (targets.some(requiresJava)) { if ((await commandUtils.checkJavaMajorVersion()) < MIN_SUPPORTED_JAVA_MAJOR_VERSION) { - utils.logLabeledError("emulators", JAVA_DEPRECATION_WARNING, "warn"); - deprecationNotices.push(JAVA_DEPRECATION_WARNING); + throw new FirebaseError(JAVA_DEPRECATION_WARNING); } } if (options.logVerbosity) {