Apabila cuba menjalankan kelas Java yang disusun (Echo.class) daripada baris arahan menggunakan "java Echo " hello"", ralat berikut mungkin berlaku: "java.lang.NoClassDefFoundError: Echo". Ini menunjukkan bahawa Mesin Maya Java (JVM) tidak dapat mencari definisi kelas untuk "Echo".
Untuk menyelesaikan isu ini, anda perlu menentukan laluan kelas semasa menjalankan arahan. Classpath ialah pembolehubah persekitaran yang mentakrifkan laluan yang JVM harus mencari fail .class. Dengan memasukkan direktori semasa (".") dalam classpath, JVM boleh mencari fail Echo.class.
Oleh itu, arahan yang betul untuk melaksanakan kelas Java daripada baris arahan ialah:
java -cp . Echo "hello"
Arahan ini menentukan direktori semasa sebagai sebahagian daripada classpath (-cp .) dan kemudian memanggil kelas Echo (Echo) dengan argumen yang disediakan ("hello").
Sebagai alternatif, anda boleh tetapkan pembolehubah persekitaran CLASSPATH untuk memasukkan direktori semasa dan kemudian jalankan arahan tanpa menentukan classpath. Contohnya:
SET CLASSPATH=%CLASSPATH;. java Echo "hello"
Atas ialah kandungan terperinci Mengapakah \"java Echo \\\"hello\\\"\" Gagal dan Bagaimana untuk Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!