Unsupported Class File Major Version 61 Android Studio: Nguyên nhân và Cách khắc phục

Chủ đề unsupported class file major version 61 android studio: Lỗi "Unsupported class file major version 61" trong Android Studio thường xuất hiện khi môi trường phát triển không tương thích với Java 17 trở lên. Bài viết này sẽ hướng dẫn bạn các nguyên nhân gây ra lỗi và cung cấp các giải pháp để khắc phục hiệu quả, đảm bảo dự án của bạn tiếp tục hoạt động trơn tru mà không bị gián đoạn bởi sự cố phiên bản Java.

1. Giới thiệu về lỗi Unsupported Class File Major Version 61


Lỗi Unsupported Class File Major Version 61 trong Android Studio thường xuất hiện khi môi trường Java hiện tại không tương thích với mã đã biên dịch bằng phiên bản Java mới hơn. Trong trường hợp này, “major version 61” tương ứng với Java SE 17. Điều này có nghĩa là ứng dụng hoặc thư viện của bạn đã được biên dịch bằng JDK 17, trong khi môi trường Android Studio hoặc Gradle của bạn đang chạy trên phiên bản Java thấp hơn, chẳng hạn như JDK 11.


Nguyên nhân của lỗi này thường là do sử dụng các thư viện hoặc plugin không tương thích với phiên bản JDK hiện tại. Để khắc phục, bạn có hai lựa chọn chính: cập nhật JDK hoặc điều chỉnh cài đặt Gradle.

  • Cập nhật phiên bản JDK: Bạn có thể nâng cấp JDK lên phiên bản mới nhất, ví dụ Java 17, để tương thích với các file lớp biên dịch mới. Để thực hiện việc này, hãy vào mục File > Project Structure, chọn phiên bản JDK 17 từ danh sách.
  • Chỉnh sửa cài đặt Gradle: Nếu bạn không muốn nâng cấp JDK, bạn có thể hạ cấp mã nguồn về phiên bản Java thấp hơn bằng cách chỉnh sửa file cấu hình Gradle. Hãy đảm bảo rằng sourceCompatibilitytargetCompatibility được thiết lập về cùng một phiên bản Java, ví dụ như Java 11.


Khi gặp lỗi này, giải pháp tốt nhất phụ thuộc vào môi trường và dự án cụ thể của bạn. Hãy đảm bảo rằng bạn chọn giải pháp phù hợp nhất để giữ dự án ổn định và tránh các xung đột khác.

1. Giới thiệu về lỗi Unsupported Class File Major Version 61
Làm Chủ BIM: Bí Quyết Chiến Thắng Mọi Gói Thầu Xây Dựng
Làm Chủ BIM: Bí Quyết Chiến Thắng Mọi Gói Thầu Xây Dựng

2. Cách khắc phục lỗi Unsupported Class File Major Version 61

Lỗi "Unsupported Class File Major Version 61" trong Android Studio xảy ra khi phiên bản Java được dùng để biên dịch mã nguồn không tương thích với phiên bản Java mà Android Studio hỗ trợ. Để khắc phục lỗi này, bạn cần thực hiện các bước sau:

  1. Cập nhật phiên bản JDK:
    • Mở Android Studio, vào mục File > Project Structure.
    • Chọn tab Project và thay đổi phiên bản JDK xuống một phiên bản cũ hơn mà Android Studio hỗ trợ, như Java 8 hoặc Java 11.
    • Nhấn OK để lưu thay đổi và khởi động lại dự án.
  2. Điều chỉnh Gradle:
    • Vào File > Settings, chọn mục Gradle.
    • Trong mục này, thay đổi đường dẫn Gradle Distribution URL sang phiên bản tương thích với JDK mà bạn đã chọn.
    • Nhấn OK và sau đó thực hiện việc biên dịch lại dự án.
  3. Cấu hình lại file build.gradle:
    • Mở file build.gradle của dự án.
    • Thêm đoạn mã sau vào phần compileOptions: \[ compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } \]
    • Lưu và biên dịch lại dự án.
  4. Kiểm tra công cụ build:
    • Đảm bảo rằng các công cụ build như Android Gradle Plugin và SDK đều được cập nhật.
    • Vào mục Build, Execution, Deployment trong Android Studio và kiểm tra các thiết lập.

Sau khi thực hiện các bước trên, dự án của bạn sẽ có thể biên dịch mà không gặp lỗi "Unsupported Class File Major Version 61".

3. Phân tích chuyên sâu về lỗi major version 61


Lỗi "Unsupported Class File Major Version 61" xảy ra khi bạn chạy một ứng dụng Java được biên dịch bằng phiên bản JDK 17 (đại diện bởi mã nội bộ "major version 61"), nhưng môi trường Java hiện tại của bạn không hỗ trợ phiên bản này. Điều này thường xảy ra trong Android Studio khi phiên bản Java runtime thấp hơn so với yêu cầu của mã nguồn.


Trong Java, mỗi file .class đều chứa một số phiên bản chính xác định JDK được sử dụng để biên dịch nó. Ví dụ, phiên bản major 61 tương ứng với Java 17. Nếu môi trường Java của bạn chỉ hỗ trợ các phiên bản cũ hơn như Java 8 hoặc 11, thì bạn sẽ gặp lỗi này.


Lỗi này có thể xuất hiện khi bạn sử dụng các thư viện hoặc công cụ yêu cầu phiên bản Java mới hơn. Để phân tích sâu hơn, chúng ta cần hiểu rằng:

  • Nguyên nhân: Java Virtual Machine (JVM) kiểm tra số phiên bản major để xác định xem nó có thể chạy mã .class không. Khi gặp mã biên dịch với phiên bản Java cao hơn so với runtime hiện tại, JVM sẽ từ chối và báo lỗi.
  • Kiểm tra tính tương thích: Bạn có thể kiểm tra file class bằng lệnh javap -v MyClass.class để xem phiên bản major của nó và đảm bảo rằng môi trường runtime tương ứng với phiên bản đó.
  • Cách giải quyết: Bạn có thể nâng cấp JDK hoặc cài đặt lại Android Studio với phiên bản Java tương thích, thường là từ Java 17 trở lên, hoặc tùy chỉnh cấu hình Gradle của dự án để sử dụng các phiên bản JDK cũ hơn, phù hợp với môi trường hiện tại.

4. Các câu hỏi thường gặp (FAQs)

  • 1. Lỗi Unsupported Class File Major Version 61 là gì?
  • Lỗi này xảy ra khi JVM gặp một file class được biên dịch bằng phiên bản Java mới hơn phiên bản mà JVM có thể hiểu được. Major version 61 đại diện cho Java SE 17, do đó lỗi xảy ra nếu bạn đang sử dụng JVM cũ hơn Java 17.

  • 2. Làm thế nào để khắc phục lỗi này?
  • Cách đơn giản nhất là cập nhật Java JDK lên phiên bản 17 hoặc cao hơn. Ngoài ra, bạn có thể biên dịch lại mã nguồn với phiên bản Java cũ hơn để tương thích với môi trường đang sử dụng.

  • 3. Tôi có thể thay đổi JDK trong Android Studio như thế nào?
  • Để thay đổi JDK trong Android Studio, vào mục "File" > "Project Structure", sau đó chọn JDK tương ứng trong mục "Project". Điều này sẽ giúp Android Studio sử dụng đúng phiên bản Java mà bạn muốn.

  • 4. Nếu thay đổi JDK vẫn gặp lỗi, tôi phải làm gì?
  • Bạn có thể cần điều chỉnh phiên bản Gradle hoặc cấu hình trình biên dịch Java trong dự án để khắc phục. Đảm bảo cấu hình đúng Gradle và module trong "Dependencies".

  • 5. Cách kiểm tra phiên bản Java đang sử dụng trong dự án?
  • Bạn có thể kiểm tra bằng cách mở "File" > "Project Structure" và kiểm tra mục "Project" để thấy JDK đang sử dụng.

4. Các câu hỏi thường gặp (FAQs)

5. Kết luận

Lỗi Unsupported Class File Major Version 61 là một vấn đề phổ biến khi làm việc với các dự án Android Studio, đặc biệt khi sử dụng các phiên bản Java mới hơn. Tuy nhiên, việc khắc phục lỗi này không quá phức tạp nếu ta hiểu rõ nguyên nhân và tuân theo các bước hướng dẫn dưới đây.

5.1 Tóm tắt các giải pháp

  • Cập nhật JDK: Đảm bảo sử dụng phiên bản JDK tương thích với Android Studio. Hiện tại, Android Studio hỗ trợ tốt nhất JDK 11. Các phiên bản mới hơn như JDK 17 hoặc 18 có thể gây ra lỗi này. Việc thay đổi JDK có thể thực hiện dễ dàng qua File > Project Structure trong Android Studio.
  • Quản lý Gradle: Đảm bảo phiên bản Gradle và plugin Gradle tương thích với JDK đang sử dụng. Có thể cập nhật và cấu hình Gradle thông qua mục File > Settings > Gradle.
  • Kiểm tra cấu hình môi trường: Đặt đúng biến môi trường JAVA_HOME trỏ tới JDK được cài đặt, để đảm bảo Android Studio và Gradle sử dụng đúng phiên bản JDK.

5.2 Lời khuyên khi sử dụng các phiên bản Java mới

  • Luôn kiểm tra sự tương thích giữa phiên bản JDK và Android Studio. Các phiên bản Java mới hơn không phải lúc nào cũng tương thích với các phiên bản công cụ phát triển, do đó việc sử dụng JDK đi kèm với Android Studio (thường là JDK 11) sẽ đảm bảo sự ổn định tốt nhất.
  • Nếu dự án yêu cầu sử dụng các tính năng mới từ các phiên bản Java cao hơn, hãy cân nhắc cấu hình riêng biệt để tránh xung đột. Điều này có thể bao gồm việc sử dụng công cụ như Maven hoặc Gradle để kiểm soát chính xác phiên bản của các thành phần trong dự án.
  • Luôn sao lưu và kiểm tra kỹ trước khi nâng cấp bất kỳ thành phần nào trong hệ thống phát triển để đảm bảo mọi thứ hoạt động trơn tru và tránh gặp phải các lỗi không mong muốn.

Với những bước đi chính xác, bạn có thể khắc phục nhanh chóng lỗi này và đảm bảo dự án của mình luôn tương thích với các công cụ phát triển Android Studio.

Bài Viết Nổi Bật