Pemuatan Fail Menggunakan getClass().getResource() dalam Penerapan Baris Perintah
Kaedah getClass().getResource() membolehkan pemuatan sumber fail daripada classpath. Walau bagaimanapun, apabila menjalankan aplikasi daripada baris arahan, pembangun mungkin menghadapi pengecualian penuding nol jika fail sumber tidak boleh diakses dalam laluan kelas semasa.
Eclipse vs. Command Line
Dalam Eclipse, folder sumber dan kandungannya ditambah secara automatik pada laluan kelas semasa pembinaan. Oleh itu, fail sumber yang diletakkan dalam folder yang sama dengan fail Java akan tersedia untuk dimuatkan menggunakan getClass().getResource() apabila menjalankan aplikasi dari dalam IDE.
Hierarki Penerapan Baris Perintah
Apabila menggunakan aplikasi sebagai fail JAR atau menjalankannya daripada baris arahan, laluan kelas mesti dikonfigurasikan secara eksplisit untuk memasukkan fail sumber. Jika fail sumber tiada dalam classpath, getClass().getResource() akan gagal menemuinya.
Penggunaan getClass().getResource() yang Betul
Untuk mengelakkan pergantungan pada sistem fail, anda disyorkan untuk menggunakan getClass().getResourceAsStream() dan bukannya menukar URI kepada objek Fail. Kaedah ini secara langsung mengembalikan InputStream untuk sumber, membenarkan pemuatan walaupun apabila fail tidak hadir secara fizikal pada sistem fail.
Konfigurasi ClassPath
Untuk memastikan bahawa fail sumber boleh diakses dalam classpath apabila berjalan dari baris arahan, ia harus dibungkus dalam fail JAR atau diletakkan dalam direktori yang merupakan sebahagian daripada classpath. Jika menggunakan pilihan -classpath dalam arahan java, pastikan direktori yang mengandungi fail sumber disertakan.
Kesimpulan
Dengan memahami nuansa konfigurasi classpath semasa arahan penempatan baris, pembangun boleh memuatkan fail sumber dengan berkesan menggunakan getClass().getResource() dan menjalankan aplikasi mereka dengan lancar di luar persekitaran Eclipse.
Atas ialah kandungan terperinci Bagaimana untuk Memuatkan Sumber dengan getClass().getResource() dalam Penerapan Baris Perintah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!