Rumah > Java > javaTutorial > Mengapakah getResourceAsStream Mengembalikan Null Apabila Memuatkan Sumber daripada JAR?

Mengapakah getResourceAsStream Mengembalikan Null Apabila Memuatkan Sumber daripada JAR?

Mary-Kate Olsen
Lepaskan: 2024-12-26 08:42:09
asal
705 orang telah melayarinya

Why Does getResourceAsStream Return Null When Loading Resources from a JAR?

getResourceAsStream Mengembalikan Null Apabila Memuatkan Sumber daripada JAR

Apabila cuba memuatkan fail teks daripada pakej JAR menggunakan Class::getResourceAsStream, anda mungkin menghadapi nilai pulangan nol. Untuk menyelesaikan isu ini, pertimbangkan perkara berikut:

Kaedah Lifepaths.class.getClass().getResourceAsStream(...) menggunakan pemuat kelas sistem, yang mungkin tidak mempunyai akses kepada sumber dalam JAR. Sebaliknya, gunakan Lifepaths.class.getResourceAsStream(...) untuk menggunakan pemuat kelas yang memuatkan kelas Lifepaths, memastikan akses kepada sumber JAR.

Apabila menggunakan getResourceAsStream(nama), pastikan nama itu bermula dengan garis miring ke hadapan "/". Amalan ini biasanya disyorkan untuk mengelakkan isu yang berpotensi.

Berikut ialah contoh kod yang diperbetulkan:

public static void execute() {
    System.out.println(Lifepaths.class.getResourceAsStream("/initialization/Lifepaths.txt"));
}
Salin selepas log masuk

Atas ialah kandungan terperinci Mengapakah getResourceAsStream Mengembalikan Null Apabila Memuatkan Sumber daripada JAR?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan