Instanciar .class cujo diretório está em uma String [RESOLVIDO]

Olá pessoal.
Estou aqui pois preciso de ajuda em minha lógica.

Tenho um software que faz várias coisas. Essas coisas são definidas por seus plugins (cada plugin é um .class que está na basta “plugins”). Originalmente o software vem com alguns plugins, mas o objetivo do mesmo é que os usuários entrem no site e baixem novos plugins, de acordo com sua necessidade.

Minha dúvida é: sabendo o diretório e o nome do arquivo .class
ex:

String diretorio = "C:\\plugin_tre.class";

de meu plugin, é possível clamar seus métodos e adquirir o valor de suas variáveis sem precisar iniciá-lo no código de meu programa?
Eu preciso saber isso, pois é impossível eu usar no código de meu programa isso, por exemplo:

Plugin_tre a1 = new plugin_tre(); A1.executa(5, "C:\\");
Pois eu nunca saberei qual é o nome do arquivo .class. Eu uso uma rotinha para verificar na pasta “plugins” todos os arquivos que sejam .class e salvo seus respectivos nomes e diretórios em uma ArrayList (ou seja, eu sei o nome, só que só sei dentro de uma String).

Existe como fazer isso, só que de outra maneira, pois essa não funciona:

String caminhoPlugin = "C:\\plugin_tre.class"; caminhoPlugin a1 = new caminhoPlugin(); a1.executa(5, "C:\\");
?

Tentei fazer isso, só que não funciona:

File file = new File("C:\\ plugin_tre.class"); String resultado = file.executa(5, "C:\\");
É isso que eu quero, poder interagir com arquivos .class que eu sei o nome, mas está dentro de uma String.

Será que alguém pode me ajudar?
(desculpe pela explicação ruim, não estou conseguindo expressar minha duvida corretamente, espero que entendam o que escrevi)

Muito Obrigado

http://java.sun.com/docs/books/tutorial/reflect/

Bah, vlw mesmo. :thumbup:
Eu tinha estudado um pouco de Reflection, mas não sabia que dava para fazer tanta coisa.
Reflection é perfeito para minha aplicação!

vlw

ViniGodoy, se não for pedir muito, tentei achar uma maneira de acessar os dados de uma String sem precisar criar um método que retorne seus respectivos valores. Não encontrei. Você sabe se tem como adquirir o valor de uma String/int usando Reflection?

Obrigado :wink: