Artikelformat

Braindump: Java Classpath während der Runtime auslesen

Immer wieder kommt es bei Java Applikationen vor, dass man sich über ein recht komisches Verhalten wundert und Klassen plötzlich nicht gefunden werden. Es hat sich gezeigt, dass der Classpath da manchmal interessante Inhalte hat und es dann sinnvoll ist, diesen beim Starten eines Tests oder einer Applikation einfach mal auszugeben.

Darum gibt es hier jetzt ein kleines Code Stück, das genau diese Aufgabe übernimmt.

 
ClassLoader scl = ClassLoader.getSystemClassLoader();
URL[] urls = ((URLClassLoader)scl).getURLs();

for(URL url: urls){
    System.out.println(url.getFile());
}

Also man nimmt sich den SystemClassLoader und greift auf die URLs zu, diese enthalten die Pfade zu den Jars im Classpath und schon ist man ein gutes Stück schlauer und bisher hat die Erkenntnis was wo auf dem Classpath liegt immer geholfen komische Phänomene aufzulösen.

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.