Compilando e Executando um arquivo .java Runtime

6 respostas
J

:shock: Eu gostaria de saber, se alguem puder me ajudar, como é possível compilar um texto ou arquivo contendo código java, e depois carregar o .class resultante !!!

O problema é que eu quero fazer isso durante a execição do programa ( runtime, como diria fenrir).

Por exemplo:
Dentro de um TextArea eu escrevo um programa java e depois disso eu poderia clicar em um Button para compilar esse código e depois clicar em outro Button para carregar essa classe !!!

Se puder dar um exemplo vai ajudar muito.

6 Respostas

ricardolecheta

para compilar: javac NomeClasse.java

para rodar: java NomeClasse

leia este tutorial daqui do GUJ:

http://www.guj.com.br/servlet/guj?PARSE=true&MAMUTE_ACTION=br.com.guj.action.ListTutorial&MAMUTE_TEMPLATE=ShowTutorial&LIST_TUTORIAL=single&TutorialId=16&PAGE=1

caiofilipini

Tenho 2 sugestões:

  • (a sugestão cara): compre um livro que te ensine os fundamentos da linguagem e da OO; eu comecei com o Java - Como Programar.

  • (a sugestão barata): acompanhe o Java Tutorial (tutorial oficial da Sun); acesse o tutorial em: http://java.sun.com/docs/books/tutorial/

Independente das duas opções, dê sempre uma olhada aqui no GUJ, e poste suas dúvidas aqui.

Valeu!

fenrir

Eu acho que ele está se referindo a compilação em runtime! 8)

Acho que a única forma de compilar seria executar o javac mesmo. E para carregar, dê uma olhada na classe ClassLoader.

hmichel

Coloquei este tópico novamente na página inicial do GUJ, para ver se alguém consegue nos esclarecer esta duvida, já que tambem necessito desta.

http://www.guj.com.br/forum/viewtopic.php?t=3880

cv1

Não se esqueça que as ferramentas como javac, javap, javah, e a propria JVM, podem ser invocadas a partir de codigo Java sem a necessidade de recorrer a um Runtime.exec(). Dê uma olhada no tools.jar, que fica no diretorio lib da sua JDK.

hmichel

Tava dando uma olhadinha lah, mas tem muitas classes lah, sabe por onde posso comecar, que classes eu devo estudar/olhar docs, qual classes fazem este trabalho.

Valeu!!

Criado 30 de junho de 2003
Ultima resposta 7 de jul. de 2003
Respostas 6
Participantes 6