G
Gast2
Gast
Moin,
wie kann ich die Klassen aus einem Package wärend der Laufzeit auslesen?
mit etwas Glaskugel habe ich folgendes gefunden
funktioniert super in Eclipse ... wenn ich das Projekt aber als JAR exportiere und starte, dann funktiniert es nicht ... und zwar läd er die Resource nicht
starte ich das Projekt über die Console (also nicht als JAR) funktioniert es wieder
hand, mogel
wie kann ich die Klassen aus einem Package wärend der Laufzeit auslesen?
mit etwas Glaskugel habe ich folgendes gefunden
Code:
private void KlassenListe()
{
// Code from JWhich
// ======
// Translate the package name into an absolute path
String pckgname = "de.x8bit.Fantasya.Atlantis.Items";
String name = new String(pckgname);
if (!name.startsWith("/")) {
name = "/" + name;
}
name = name.replace('.','/');
// Get a File object for the package
URL url = Launcher.class.getResource(name);
File directory = new File(url.getFile());
// New code
// ======
if (directory.exists()) {
// Get the list of the files contained in the package
String [] files = directory.list();
for (int i=0;i<files.length;i++) {
// we are only interested in .class files
if (files[i].endsWith(".class")) {
// removes the .class extension
String classname = files[i].substring(0,files[i].length()-6);
System.out.println(classname);
}
}
}
}
funktioniert super in Eclipse ... wenn ich das Projekt aber als JAR exportiere und starte, dann funktiniert es nicht ... und zwar läd er die Resource nicht
Code:
URL url = Launcher.class.getResource(name); // trööööt
starte ich das Projekt über die Console (also nicht als JAR) funktioniert es wieder
hand, mogel