是否可以使用 eclipse 使用的 Java 编译器而不是 JDK 来动态编译外部 .java 文件?
我希望我的代码做的是:
- 动态创建 .java 文件
- 编译该 .java 文件
- 使用反射来获取有关此文件的信息
我知道如何执行步骤 1 和 3,但是仅使用 Eclipse 就可以实现步骤 2,还是有更好的方法来完成我想要的任务?
最佳答案
是的,您可以使用 Java 编译器来实现这一点。您不需要编译 .java
文件,只需解析它即可获得包含以下信息的抽象语法树 (AST):
- 添加 required Eclipse compiler JARs作为 Java 应用程序的依赖项
- 创建 AST 并获取您想要的信息,例如就像 this example
关于java - 使用 Eclipse 在运行时编译外部 Java 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60805807/