Rumah >Java >javaTutorial >Mengapakah getResourceAsStream Mengembalikan Null dalam Java, dan Bagaimana Saya Boleh Membetulkannya?

Mengapakah getResourceAsStream Mengembalikan Null dalam Java, dan Bagaimana Saya Boleh Membetulkannya?

Linda Hamilton
Linda Hamiltonasal
2024-12-21 14:54:11215semak imbas

Why Does getResourceAsStream Return Null in Java, and How Can I Fix It?

Menyelesaikan masalah "getResourceAsStream Returns Null" Isu dalam Java

Apabila cuba memuatkan fail dalam JAR menggunakan getResourceAsStream, adalah mungkin untuk menghadapi pulangan batal. Untuk menyelesaikan masalah ini, adalah penting untuk memahami cara sumber dimuatkan dan format laluan yang betul.

Mekanisme pemuatan lalai dalam getResourceAsStream menggunakan pemuat kelas sistem. Walau bagaimanapun, pendekatan ini mungkin tidak mempunyai akses kepada sumber dalam JAR anda. Sebaliknya, gunakan Lifepaths.class.getResourceAsStream(...), yang menggunakan pemuat kelas yang memuatkan kelas Lifepaths. Pemuat ini mempunyai akses kepada sumber JAR.

Selain itu, pastikan laluan sumber bermula dengan "/". Walaupun ini mungkin tidak begitu diperlukan, ia telah diperhatikan menyebabkan isu jika ditinggalkan.

Oleh itu, untuk memuatkan fail Lifepaths.txt dengan betul dari dalam struktur direktori yang ditentukan, gunakan sintaks berikut:

Lifepaths.class.getResourceAsStream("/initialization/Lifepaths.txt")

Atas ialah kandungan terperinci Mengapakah getResourceAsStream Mengembalikan Null dalam Java, dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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