Ler classes de um pacote

Hey galera /o/

Aqui no serviço estou usando Spring configurado por annotations e uma das coisas que eu acho bem legal do Spring com annotations é o component-scan que não é nada mais que uma função que a partir de um pacote inicial, lê todas as classes dentro dele, dentro dos pacotes filhos e verifica quais são componentes do Spring (Controllers, Repositorios e Serviços).

Como eu so um cara que gosta de brincar com algoritimos… tentei fazer algo parecido porem sem sucesso por que simplesmente não sei como posso ler as classes dentro de um pacote.

Alguem tem idea de como isso pode ser feito?

Como você já deve ter visto, não há na classe Package um método que liste as classes dentro de um Package. O que o Eclipse e o Netbeans fazem é algo bem mais estúpido, que é varrer os arquivos .jar e os diretórios no CLASSPATH (ou então dentro de um projeto), e ficar checando os .class (tanto dentro quanto fora de .jars) e olhar quais são as classes e seus respectivos packages.)

Alguém já postou algo semelhante a isso que você pensou aqui mesmo no GUJ, é questão de procurar. (Não, não fui eu).