我正在编写一个更新程序,它需要停止正在运行的 tomcat。我尝试从 java 调用 net stop SERVICENAME 但它不起作用。它返回错误代码 2 并中止,我猜这是出于安全原因。有人知道我该如何解决这个问题。我可以定义 java 程序以管理员身份运行并因此具有必要的权限,还是有其他方法?
这是我的代码:
String command = "cmd.exe /C net stop myservice";
Process p;
p = Runtime.getRuntime().exec(command);
p.waitFor();
log.info("exit value was " +p.exitValue());