Cách sửa lỗi 'Unsupported class file major version' trong Android Studio

beginner📱 Android2026-07-13| Android Studio (Arctic Fox đến Koala), Gradle Build System, JDK 11, 17, hoặc 21 trên Windows, macOS, hoặc Linux.

Error Message

Cause: unsupported class file major version 65 (or versions 61, 62, 63)
#Gradle#JDK#Android Studio#Lỗi Build

Cách khắc phục nhanh (TL;DR)

Vấn đề này xuất phát từ sự không đồng nhất về phiên bản. Dự án của bạn đang cố gắng sử dụng một phiên bản Java (JDK) mà phiên bản Gradle hiện tại chưa hỗ trợ. Để quay lại lập trình ngay lập tức, hãy làm theo các bước sau:

  • Mở Settings (hoặc Settings/Preferences trên macOS).
  • Đi tới Build, Execution, Deployment > Build Tools > Gradle.
  • Trong phần Gradle JDK, hãy chọn một phiên bản thấp hơn như JDK 17 hoặc JDK 11. Ngoài ra, bạn cũng có thể nâng cấp phiên bản Gradle của mình để tương thích với JDK.

Giải mã nguyên nhân gốc rễ

Java sử dụng các con số "major version" (phiên bản chính) làm ID nội bộ. Khi Gradle báo lỗi unsupported class file major version 65, về cơ bản nó đang nói rằng: "Tôi tìm thấy mã nguồn được biên dịch cho Java 21, nhưng tôi chỉ biết cách xử lý các phiên bản cũ hơn."

Kiểm tra danh sách này để xem lỗi của bạn đang đề cập đến phiên bản Java nào:

  • Major version 66: Java 22
  • Major version 65: Java 21
  • Major version 61: Java 17
  • Major version 55: Java 11
  • Major version 52: Java 8

Sự không tương thích như thế này thường xuất hiện sau khi bạn cập nhật Android Studio. Chúng cũng xảy ra khi bạn import một dự án mới hoặc cài đặt thủ công một JDK mới mà Android Studio vô tình nhận diện.

Cách 1: Điều chỉnh JDK trong cài đặt Android Studio

Thông thường, cách khắc phục dễ nhất là trỏ Android Studio tới một JDK tương thích. Bạn không nhất thiết phải dùng phiên bản Java mới nhất để xây dựng một ứng dụng Android.

  • Nhấn Ctrl+Alt+S (Windows/Linux) hoặc Cmd+, (macOS) để mở Settings.
  • Điều hướng đến Build, Execution, Deployment > Build Tools > Gradle.
  • Tìm menu thả xuống Gradle JDK.
  • Nếu phiên bản Gradle của bạn đang ở mức 7.x, hãy chuyển JDK sang Embedded JDK hoặc JDK 17.
  • Nhấn Apply và nhấp vào Try Again trên thanh thông báo đồng bộ.

Cách 2: Nâng cấp phiên bản Gradle

Bạn có thực sự cần các tính năng của Java 21 không? Nếu có, bạn phải nâng cấp Gradle. Ví dụ: Java 21 (phiên bản 65) yêu cầu ít nhất Gradle 8.5 để hoạt động chính xác.

  • Trong cây thư mục dự án, mở gradle/wrapper/gradle-wrapper.properties.
  • Tìm dòng distributionUrl.
  • Cập nhật số phiên bản sang một bản phát hành tương thích.
# Phiên bản cũ (Không hỗ trợ Java 21)
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip

# Phiên bản đã cập nhật (Hỗ trợ Java 21)
distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip

Đồng bộ lại dự án. Gradle sẽ tự động tải xuống các tệp cần thiết. Lỗi "major version 65" của bạn sẽ biến mất.

Cách 3: Khắc phục lỗi trong Terminal và JAVA_HOME

Đôi khi IDE hoạt động bình thường, nhưng khi chạy ./gradlew assembleDebug trong terminal lại thất bại. Điều này xảy ra do terminal phụ thuộc vào biến môi trường JAVA_HOME của hệ thống, bỏ qua các cài đặt nội bộ của Android Studio.

Chạy lệnh sau để xem terminal của bạn đang sử dụng phiên bản nào:

java -version

Nếu kết quả trả về Java 21 nhưng dự án của bạn yêu cầu Java 17, bạn cần điều hướng lại JAVA_HOME. Trên macOS hoặc Linux, bạn có thể thay đổi tạm thời cho phiên làm việc hiện tại:

export JAVA_HOME=`/usr/libexec/java_home -v 17`
./gradlew build

Trên Windows, hãy thiết lập đường dẫn đến thư mục JBR của Android Studio:

set JAVA_HOME=C:\Program Files\Android\Android Studio\jbr
.\gradlew build

Bảng tra cứu tính tương thích

Sử dụng bảng này để giữ cho môi trường của bạn ổn định. Nó hiển thị phiên bản Gradle tối thiểu cần thiết cho mỗi bản phát hành Java.

  Phiên bản Java
  Phiên bản Gradle yêu cầu




  17
  7.3+


  18
  7.5+


  19
  7.6+


  20
  8.3+


  21
  8.5+

Xác nhận kết quả

Sau khi thay đổi các cài đặt, hãy đảm bảo làm sạch trạng thái cũ. Đi tới File > Invalidate Caches... và chọn Invalidate and Restart. Thao tác này sẽ xóa mọi siêu dữ liệu (metadata) còn sót lại từ các lần build thất bại trước đó.

Sau khi khởi động lại, nhấp vào biểu tượng con voi (Sync Project with Gradle Files). Kiểm tra tab Build ở phía dưới. Dấu tích màu xanh lá cây có nghĩa là bạn đã có thể tiếp tục làm việc.

Vẫn còn lỗi? Hãy kiểm tra lại tệp build.gradle cấp Module. Đảm bảo sourceCompatibilitytargetCompatibility khớp với JDK bạn đã chọn.

android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_17
        targetCompatibility JavaVersion.VERSION_17
    }
    kotlinOptions {
        jvmTarget = '17'
    }
}

Related Error Notes