请知道Standford不是exe。它是一个包含许多程序的文件夹
我使用以下语句打开cmd.exe:
public static void runStanfordCMD() throws IOException{
List<String> cmds = Arrays.asList("cmd.exe", "/C", "start", "java", "-mx4g", "-cp", "*", "edu.stanford.nlp.pipeline.StanfordCoreNLPServer");
ProcessBuilder builder = new ProcessBuilder(cmds);
builder.directory(new File("D:/Desktop/stanford-corenlp-full-2015-12-09"));
Process proc = builder.start();
}
那么在我完成一些进程后如何关闭cmd.exe?
使用ProcessBuilder或Runtime ??? 如果使用ProcessBuilder如何根据我的情况编写语句?
如何根据我的情况将语句写入运行时??
public static void closeStanfordCMD() throws IOException{
try {
Runtime.getRuntime().exec("command.exe /C" + "Your command"); ??????how to write the statement???
} catch (Exception e) {
e.printStackTrace();
}
}
答案 0 :(得分:1)
??????怎么写声明???
如果要关闭命令提示符
Runtime.getRuntime().exec("taskkill /IM " + "cmd.exe");
如果你想关闭standford.exe
Runtime.getRuntime().exec("taskkill /IM " + "standford.exe");
希望它有所帮助。
答案 1 :(得分:1)
方法 Runtime.getRuntime().exec 返回Process的对象。
进程有一个方法destroy(),可以杀死你正在运行的进程 所以你需要的是存储exec方法返回的Process对象,并在你想杀死进程时调用destroy()。
此外,您可以调用waitFor()方法等待进程停止(如果需要,导致当前线程等待,直到此Process对象表示的进程终止)。
要说清楚,请尝试使用此代码(或根据需要进行修改):
android.icu.util.Calendar