Il est possible par programmation de savoir d'où vient une classe : un jar ? un répertoire ? autre ?
Use case classique : vous pensez (et devez) ne plus avoir les commons-logging nulle part dans votre classpath, parce que vous êtes (intelligemment :-)) passés à SLF4J. Malgré cela, il semble que cette fichue classe soit toujours trouvée, mais vous n'arrivez pas à savoir dans quel jar (ou quel répertoire si vous travaillez directement avec les .class). Résultat, ça vous fout un bazar monstre dans la configuration de vos logs. Certains continuent à apparaitre alors que vous avez demandé à ce qu'ils ne soient pas affichés...
Le code est un peu sioux, alors je le mets ici au cas où ça vous servirait :
System.out.println(MaClasse.class.getProtectionDomain().getCodeSource().getLocation());
Derniers commentaires