Tôi đã gặp vấn đề này trong một thời gian, nhưng bây giờ tôi đã tìm ra nó.
Hóa ra là Java JDK 12 có cả JRE và JDK bên trong thư mục bin của Java 12 JDK. (Tôi luôn tin rằng JRE và JDK là các ứng dụng khác nhau, nhưng hóa ra mọi thứ đã thay đổi)
Vấn đề của tôi là tôi đã cài đặt Java JDK 12 trên máy tính của mình
Đồng thời, tôi đã cài đặt Java 8 (JRE) trên máy tính của mình.
Vì vậy, máy tính của tôi đang bị nhầm lẫn.
Với thiết lập môi trường dấu nhắc lệnh của tôi để chạy các lệnh Java và Javac:
Tôi đã nhập các lệnh sau:
java -version
// cái này đã cho tôi Java 8
Sau đó, tôi nhập:
javac -version
// cái này đã cho tôi Java 12
Nói cách khác, chương trình của tôi đang được biên dịch với Java 12 và tôi đang cố gắng chạy với Java 8.
Để giải quyết vấn đề, tôi đã gỡ cài đặt Java 8 JRE khỏi máy tính của mình.
Đã quay lại dấu nhắc lệnh để kiểm tra xem "java -version" và "javac -version" có trả về cùng một số phiên bản hay không và có, nó đang trả về Java 12.
Đã cố gắng biên dịch lại chương trình của tôi và chạy nó. Nó hoạt động !!
Nó hoạt động! Eureka !!