在阅读了很多关于Runtime.exec和Java的类似问题之后,我没有遇到过编译和运行.java文件的安全而干净的习惯用法。我刚刚读完了“当Runtime.exec()不会”这篇文章,它帮助我理解了一般的做法和不做的,但没有提供我正在寻找的这个成语。
总的来说,我正在尝试创建单独的进程,这些进程将编译并串行运行(多个服务器),而不会挂起或留下任何孤立进程。我对这些主题并不精通,所以我正在寻找更多指示。
到目前为止,我可以通过这样做来编译文件:
try {
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("javac Server.java");
int exitVal = proc.waitFor();
System.out.println("Process exitValue: " + exitVal);
} catch (Throwable t) {
t.printStackTrace();
}