Maison > Java > javaDidacticiel > Pourquoi « getResourceAsStream » renvoie-t-il null lors de l'accès aux ressources dans un JAR et comment puis-je y remédier ?

Pourquoi « getResourceAsStream » renvoie-t-il null lors de l'accès aux ressources dans un JAR et comment puis-je y remédier ?

Mary-Kate Olsen
Libérer: 2024-12-21 22:24:28
original
759 Les gens l'ont consulté

Why Does `getResourceAsStream` Return Null When Accessing Resources in a JAR, and How Can I Fix It?

Résolution de la sortie nulle de getResourceAsStream

Lorsque vous tentez de récupérer un fichier texte à partir d'un JAR empaqueté à l'aide de Class::getResourceAsStream renvoie null, cela indique problèmes avec le mécanisme de chargement des ressources. La solution suivante résout ce problème :

  1. Chargement de ressources modifié : au lieu d'utiliser Lifepaths.class.getClass().getResourceAsStream(...), qui appelle le chargeur de classe système (qui manque souvent de visibilité sur les ressources packagées), utilisez directement Lifepaths.class.getResourceAsStream(...) . Cela garantit que les ressources sont chargées par le chargeur de classe qui a chargé Lifepaths, lui permettant d'accéder aux ressources packagées.
  2. Leading Slash : lors de la spécification du chemin de la ressource dans getResourceAsStream(name), il est Il est essentiel de le préfixer d'une barre oblique (/). Cela n'est pas toujours nécessaire mais a été observé pour résoudre des problèmes potentiels.

En implémentant ces modifications, le code fourni devrait charger et imprimer avec succès le contenu du fichier texte à partir du package JAR.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal