在运行时生成,编译和使用Java代码?

Tas*_*han 7 java compilation

我有一个场景,我必须在我的应用程序运行时生成Java代码.

可以编译和运行来自我的应用程序的代码(作为单独的应用程序).

是否可以编译然后从同一个应用程序中使用它.不能想到任何可能性

kar*_*aze 10

查看使用javax.tools创建动态应用程序.我今天第二次提到这个 - 我发誓我不为他们工作.


iru*_*ger 5

您可以使用JavaCompiler的实例:

JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
Run Code Online (Sandbox Code Playgroud)

请点击链接以获取有关如何使用它的示例.

  • 请注意,您需要一个 JDK 才能使其工作。JRE 安装不包括编译器。 (2认同)

rat*_*eak 1

使用ProcessBuilderRuntime.exec()您可以从 java 代码运行任何命令行应用程序

这包括 javac 编译器和 java 作为单独的进程