Компиляция и выполнение кода Scala во время выполнения - PullRequest
21 голосов
/ 20 сентября 2011

Можно ли скомпилировать и выполнить код Scala в виде строки во время выполнения в Scala или в Java?

Моя идея - создать DSL с использованием Scala, а затем позволить программистам Java использовать DSL внутри Java.

Я слышал, что класс scala.tools.nsc.Interpreter может делать что-то подобное, но когда я импортировал его в свой файл scala, я получил «объектные инструменты не являются членами пакета scala».

Так кто-нибудь может дать мне подсказку?

Ответы [ 2 ]

17 голосов
/ 16 сентября 2012

В версии 2.10.0 мы предоставляем API отражения Scala, который, помимо прочего, включает в себя средство компиляции во время выполнения.Более подробную информацию можно найти здесь: Генерация класса из строки и создание его экземпляра в Scala 2.10 .

8 голосов
/ 20 сентября 2011

Я рекомендую вам twitter-util Eval

...