Sto creando un editor di codice e sto lavorando al completamento automatico. Voglio ottenere a livello di programmazione un elenco di tutte le classi fornite con JDK.Iterating through all JDK classes
Gli esempi includono:
java.io.File
java.util.ArrayList
javax.swing.Action
ho trovato modi per ottenere le classi per un pacchetto specifico. Ad esempio, posso ottenere tutte le classi che iniziano con com.mypackage.foo
. Il problema è che sto cercando di ottenere le classi che sono state caricate con lo Bootstrap ClassLoader
. E su OSX JDK, il classloader si presenta come null
. Ad esempio, se faccio String.class.getClassLoader()
, ovvero null
.
Qualche idea?
Questa [domanda SO] (http://stackoverflow.com/questions/2681459/how-can-i-list-all-classes-loaded-in-a -specific-class-loader) potrebbe aiutare. –
Sì, l'ho visto mentre stavo cercando google per ore lol. Non voglio fare strumentazione perché è hacky e richiede di fornire argomenti di JVM. La soluzione "hackerish" in basso fornisce solo le classi che sono già state caricate. Così, quando l'ho eseguito, mostrava solo 2 classi, non migliaia. – satnam