Smarty_de Geschrieben 10. September 2003 Teilen Geschrieben 10. September 2003 Hallo, ich habe ein Problem bzgl. eines jar-Archivs, das ich für meine Applikation erstellt habe. Und zwar würde ich dieses Archiv gerne dynamisch durchsuchen können. Die Idee ist, dynamisch Klassen zu laden, die ein bestimmtes Interface implementieren und in einem bestimmten Verzeichnis innerhalb des Archivs zu finden sind. Ich weiß zur Kompilierzeit noch nicht, wie viele und welche Klassen das sein werden. Ich möchte also zur Laufzeit das Verzeichnis durchsuchen und die Klassen, die ich dort finde, instanziieren. Ich kann zwar ein File-Objekt auf die jar-Datei anlegen, jedoch kann File meines Wissens nach nicht das Archiv lesen. Weiß jemand, wie ich vorgehen muss? Ihr würdet mir sehr helfen!!! Vielen Dank schonmal und viele Grüße Smarty Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kingofbrain Geschrieben 11. September 2003 Teilen Geschrieben 11. September 2003 Servus, soweit ich weiss, kannst Du ein jar-Archiv nicht nach Klassen durchsuchen. Du kannst aber mit den Klassen zur zip-Behandlung (Java-API) das jar-File öffnen und die Dateien lesen. Wenn sie als class-Files vorliegen, müsstest Du sie über einen Decompiler / Bytecodeleser lesen und schauen, ob sie das genannte Interface interpretieren. Sollten es java-Files sein, kannst Du die Datei ja öffnen und nachschauen. Aber vielleicht brauchst Du das gar nicht. Was willst Du denn genau machen, vielleicht gibts einen anderen Weg. Peter Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
PerdianMG Geschrieben 12. September 2003 Teilen Geschrieben 12. September 2003 Guck dir am besten mal die API zu java.net.URLClassLoader an - der macht nämlich genau das, was du willst (wenn ich dich richtig verstanden habe *g*) Ciao Christian Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.