Package scannen

Hallo,

Da ich zur Entwurfszeit nicht weiss, wieviele Klassen später meinem Package zugeordnet werden, moechte ich wissen, welche Möglichkeit ich habe, mir alle Klassen meines Packages zur Laufzeit angeben zu lassen, ohne das package-Verzeichnis auf Betriebssystem-Ebene durchscannen zu muessen.

Vielen Dank, Lars !

Hallo Lars!

Da ich zur Entwurfszeit nicht weiss, wieviele Klassen später
meinem Package zugeordnet werden, moechte ich wissen, welche
Möglichkeit ich habe, mir alle Klassen meines Packages zur
Laufzeit angeben zu lassen, ohne das package-Verzeichnis auf
Betriebssystem-Ebene durchscannen zu muessen.

Wofür brauchst Du denn die Anzahl der Klassen überhaupt?

Ich denke nicht, dass es eine Möglichkeit gibt die Anzahl der Klassen eines Packages zu bestimmen. Dies erscheint mir auch nicht sinnvoll. Diese Klassen müssen schließlich nicht in einem einzigen Verzeichnis liegen, sondern können aus verschiedenen Quellen stammen. Im „schlimmsten“ Fall (z.B. bei RMI) werden die Klassen dynamisch von einem Webserver geladen, sofern sie lokal nicht vorhanden sind.

CU
Markus

Hallo nochmal,

es ist kein Problem über die FileInputStreams die Menge an Klassen zu zählen. Ein Package ist ein Verzeichnis. Dafür gibt es die Methode getList() .
Über einen Iterator jedes File abfragen und die Extension prüfen.Wenn „.class“ dann zähler++ .

Aber es würde mich auch interessieren, wofür du die menge brauchst?

Mfg,
Marc

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]