在运行时编译多个Java类

在运行时编译多个Java类,java,compilation,h2o,Java,Compilation,H2o,我试图解决的问题: 我们有h2o生成的文件,它由多个java类组成——一个核心类实现类路径上的接口,另一些类保存核心类使用的值。目标是能够在运行时加载此文件(保存在数据库中),并在需要时执行它,而无需重新启动任何应用程序 在SO上可以找到的一些解决方案基本上用于一个类的编译。现在不适合。为什么不能一次编译一个类,多次编译?使用ProcessBuilder通过它执行命令。如果所有java文件都存在于同一目录中,则可以使用javac*.java一次编译所有文件@如果他们互相依赖的话,那肯定不行。特别

我试图解决的问题:

我们有h2o生成的文件,它由多个java类组成——一个核心类实现类路径上的接口,另一些类保存核心类使用的值。目标是能够在运行时加载此文件(保存在数据库中),并在需要时执行它,而无需重新启动任何应用程序


在SO上可以找到的一些解决方案基本上用于一个类的编译。现在不适合。

为什么不能一次编译一个类,多次编译?使用
ProcessBuilder
通过它执行命令。如果所有java文件都存在于同一目录中,则可以使用
javac*.java
一次编译所有文件@如果他们互相依赖的话,那肯定不行。特别是如果它们是循环依赖的如果它们是。。。我们不知道为什么我会问这个问题。@takendarkk正如我写的那样,它们相互依赖,这就是问题所在,为什么不能一次编译一个类,多次编译?使用
ProcessBuilder
通过它执行命令。如果所有java文件都存在于同一目录中,则可以使用
javac*.java
一次编译所有文件@如果他们互相依赖的话,那肯定不行。特别是如果它们是循环依赖的如果它们是。。。好吧,我们不知道为什么我会这样问。@Takendark,正如我写的,他们彼此依赖,这就是问题所在