Eventuali suggerimenti su come avvicinarsi quanto avrei trovato un elenco di nomi di pacchetti che esiste sul classpath corrente?Java: programmazione di determinare tutti i nomi dei pacchetti caricati sul classpath
Questo deve essere eseguito a livello di programmazione in fase di esecuzione da una delle classi caricate (ed eseguite) sul classpath (ad esempio all'interno di, non all'esterno in).
Maggiori dettagli:
Un approccio ho considerato è stato quello di utilizzare la riflessione su ciascuna delle classi caricate finora dal caricatore di classe, ed estrarre i nomi dei pacchetti da loro. Tuttavia, la mia applicazione gira già in migliaia di classi, quindi ho bisogno di un approccio più efficiente.
Un'altra cosa che ho considerato era qualcosa di analogo a scoprire quali file JAR fossero nel percorso classe e quindi fare la directory che elenca paralleli per ogni JAR. Tuttavia, non so se questo è possibile dall'interno dell'applicazione/come farlo.
punti bonus
punti bonus per chiunque suggerisce un modo che può filtrare da pacchetti di alto livello. Per esempio. mostra tutti i pacchetti sotto com.xyz
==>com.xyz.*
, com.xyz.*.*
Grazie!
Conosco VFS ma non conoscevo questa funzionalità. Potresti dare un suggerimento su quale classe aiuta a scannerizzare il classpath? – AlexR