我的问题需要 2 个问题,但我会保持简短。所以我需要启动一个bat文件。现在我这样做:
public static void check() throws InterruptedException{
try {
Runtime.getRuntime().exec("cmd /c start build.bat");
Thread.sleep(3000);
} catch (IOException e) {
e.printStackTrace();
}
}
bat 文件启动 java 编译器以编译另一个 java 文件并将错误消息定向到 txt 文件中。这是bat文件的样子:
@echo off
javac -Xstdout error.txt MainApp.java
exit
现在的问题是,我必须包含 3 秒的睡眠,以确保 error.txt 已创建并充满错误。这是非常不满意的。我要么需要 bat 文件的返回值,所以程序的其余部分会等待,直到它完成,或者需要一种从程序中启动 java 编译器并将错误消息定向到 txt 文件的方法。
谢谢大家。