在本教程中,我们将学习如何将包含Java源代码的_String_转换为编译后的类并执行它。在运行时编译代码有许多潜在的应用场景:
- 生成代码 - 来自运行时不可用或经常变化的信息的动态代码
- 热交换 - 不用重启应用程序即可替换代码
- 代码存储/注入 - 将应用程序逻辑存储在数据库中,以便临时检索和执行。如果小心操作,可以在不使用时卸载自定义类。
尽管有几种编译类的方法,但今天我们将重点关注JavaCompiler API。
_javax.tools_包包含了我们将需要编译_String_的大部分抽象。让我们来看一看其中的一些,以及我们将遵循的一般流程:
大约 7 分钟