Страницы

Friday, August 21, 2009

Динамическая компиляция в Java

В строке (или строковом буфере) находится текст программы. Цель - скомпилировать этот код и получить экземпляр созданного на лету класса. Аналог функции eval() в JavaScript, например, когда мы исполняем код в строке.
Это будет реально интересным дополнением к reflection - традиционному для Java методу создания экземпляров класса в динамике. Решается с помощью javax.tools из JDK 6. Исходные тексты примеров можно посмотреть здесь.

2 comments:

  1. Как я понимаю - требуется установленный и находимый JDK.

    Поэтому пока http://www.janino.net/ IMHO предпочтительнее.

    ReplyDelete
  2. да - JDK6. А в чем недостаток?

    ReplyDelete