java - 使用 Eclipse 在运行时编译外部 Java 文件

标签 java eclipse compilation

是否可以使用 eclipse 使用的 Java 编译器而不是 JDK 来动态编译外部 .java 文件?

我希望我的代码做的是:

  1. 动态创建 .java 文件
  2. 编译该 .java 文件
  3. 使用反射来获取有关此文件的信息

我知道如何执行步骤 1 和 3,但是仅使用 Eclipse 就可以实现步骤 2,还是有更好的方法来完成我想要的任务?

最佳答案

是的,您可以使用 Java 编译器来实现这一点。您不需要编译 .java 文件,只需解析它即可获得包含以下信息的抽象语法树 (AST):

  1. 添加 required Eclipse compiler JARs作为 Java 应用程序的依赖项
  2. 创建 AST 并获取您想要的信息,例如就像 this example

关于java - 使用 Eclipse 在运行时编译外部 Java 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60805807/

相关文章:

java - 我的带有 onClickListener 的 ImageView 在单击时不执行任何操作

eclipse - Maven eclipse :eclipse fail to execute

c++ - 我可以在不同的 linux 上编译相同的 c++ 代码吗?

c++ - 如何正确扩展C++中的类并编写其头文件?

multithreading - 无法从编程书上运行我的代码(c++)

java - 通知 LED - 颜色

java - 仅使用不同 ArrayList 中的一个字段搜索具有多个字段的 ArrayList

java - 未找到 Android Google Play 服务视觉条码扫描器库

java - 在Domino Notes中用java添加图片

java - Eclipse 在我的 JPA 项目上报告错误