如何在运行时编译和部署java类?

Yan*_*eve 19 java runtime compilation

我正在编写一个规则引擎,它执行由条件结构确定的简单赋值.规则是XML格式的项目的先决条件.我已经将我的XML模式建模为类似于简单的代码块.我希望解析XML,然后将其转换为Java代码.然后,我希望在运行时编译(并运行)此代码.这样做意味着我的规则引擎不再充当解释器,而是执行本机Java字节代码.

我已经找到了解析阶段和或多或少的Java代码生成阶段.我现在想弄清楚最后阶段 - 运行阶段的编译.

遵循这个线程:编译为java字节码(不使用Java)我已经意识到以下可能的解决方案:

我希望能比较这些以及在运行阶段解决Java编译的其他建议.

kwa*_*ord 4

您可以将其转换为 Clojure 代码,然后 Clojure 编译器会将其转换为字节码。

  • 几年后才回到你的答案,现在我觉得你的建议令人兴奋。太糟糕了,当时我和一般的开发人员/经理没有也没有考虑 lisp 和函数式编码。我认为,您建议的一个例子是 Reimann:http://riemann.io/ (2认同)