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

Я нашел много ссылок, объясняющих, как программно скомпилировать класс Java с использованием класса JavaCompiler :

JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
int result = compiler.run(null, null, null, "a_file_name");

Однако , Я хотел бы знать, есть ли библиотека с открытым исходным кодом, которая позволяет мне скомпилировать исходный код, сгенерированный программно (поэтому без использования файла src), и сгенерировать некоторый байтовый код в потоке вывода (без создания файла класса в файловой системе) .

Например, я ищу возможность написать что-то вроде этого:

InputStream input = generateSourceCode();
OutputStream output = getByteCode(input);
doCoolStuffWithByteCode(output);

Спасибо за любую помощь.

28
задан Sergio 3 November 2011 в 00:53
поделиться