# React Native: Fix Unsupported Class File Version 63

> Fix the React Native Gradle error for unsupported class file major version 63 by switching to JDK 17, since JDK 19 is not yet supported by the build tools

**URL:** https://sentry.io/answers/bug-exception-in-phase-semantic-analysis-in-source-unit-buildscript-unsupported-class-file-major-version-63/

---

## The Problem

When using Android Studio IDE or [Expo](https://expo.dev/) to build a React Native Android application, you get the following error:

```
FAILURE: Build failed with an exception.

BUG! exception in phase 'semantic analysis' in source unit '_BuildScript_' Unsupported class file major version 63
```

This error occurs when you use Android Studio or the [React Native Gradle plugin](https://reactnative.dev/docs/react-native-gradle-plugin) to build code compiled with Java Development Kit (JDK) version 19. Both Android Studio and the plugin use an older version of the React Native Java build tool, Gradle, that doesn't support newer versions of JDK.

## The Solution

You can resolve this issue by downloading and installing an older version of the JDK.

The [React Native docs](https://reactnative.dev/docs/set-up-your-environment?platform=android#jdk) recommend using JDK version 17, as you may encounter problems using higher JDK versions.

If your Gradle version is incompatible with JDK version 17, check and update the Gradle version in the `android/gradle/wrapper/gradle-wrapper.properties` file in your React Native project directory.

## Note

When building an Android app, React Native uses Gradle, a Java build tool, and the Java Development Kit (JDK). The JDK contains tools for building your app and the Java Virtual Machine (JVM), an interpreter that executes Java applications. The JVM runs the Android Studio IDE and the Gradle build tool.

Each JDK release has a class file version for the [class file format](https://docs.oracle.com/javase/specs/jvms/se12/html/jvms-4.html) of the JVM. Class file version 63 corresponds to JDK version 19.

You can check the JDK version supported by specific Gradle versions in this [compatibility matrix](https://docs.gradle.org/current/userguide/compatibility.html), which shows that JDK version 19 supports Gradle versions 7.5+.

---

*Source: [sentry.io/answers/bug-exception-in-phase-semantic-analysis-in-source-unit-buildscript-unsupported-class-file-major-version-63/](https://sentry.io/answers/bug-exception-in-phase-semantic-analysis-in-source-unit-buildscript-unsupported-class-file-major-version-63/)*
