Компиляция файла Java с кодом из файла Java - PullRequest
0 голосов
/ 26 февраля 2012

В настоящее время я создаю персональный (возможно, публичный) Java-терминал.Я хочу создать команду, которая создаст + скомпилирует файл Java при выполнении, за исключением того, что я не слишком уверен в том, как на самом деле это сделать.Является ли это возможным?Или я просто сплю?

Ответы [ 3 ]

1 голос
/ 26 февраля 2012

Вы также можете использовать Groovy - это очень удобно, если вы просто хотите скомпилировать и запустить одну или две строки кода Java из вашего приложения. Приложение может быть на обычном Java, а Groovy используется только для компиляции динамически генерируемого кода. Какое бы решение вы ни выбрали, будьте осторожны, так как выполнение пользовательского ввода, поскольку код может привести к проблемам с безопасностью (уязвимость к атакам с использованием инъекций).

1 голос
/ 26 февраля 2012

скомпилировать файл Java

См. STBC . Он использует JavaCompiler для компиляции кода в текстовой области.

0 голосов
/ 26 февраля 2012

Я согласен с комментарием @ eee, что javax.script, вероятно, очень хорошо подходит для вашего проекта, с кодом скрипта легче работать, чем с кодом Java.Я успешно использовал его в прошлом для API плагинов, и я не помню, чтобы у него были какие-то проблемы с его запуском и запуском.

Большинство известных мне проектов по компиляции настоящей Java во время выполнения используют Eclipse компилятор для этого.К Java 6 javac можно получить полный программный доступ.Я никогда не использовал ни один из них сам.Эти два и некоторые другие компиляторы могут быть доступны через Commons-JCI при желании.

...