java - 如何用java程序停止正在运行的tomcat?

标签 java

<分区>

我正在编写一个更新程序,它需要停止正在运行的 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());

最佳答案

使用 SC(服务控制)命令,它为您提供了比启动和停止更多的选项。 您甚至可以在远程机器上启动/停止服务。

用法: sc server [命令] [服务名称]

关于java - 如何用java程序停止正在运行的tomcat?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15670717/

相关文章:

Java Eclipse 构建路径

java - 带有嵌入式 java 的独立 Play 应用程序

java - 非法参数异常 - 如何声明方法中定义的静态变量

java - java中创建线程池并创建退出信号

java - 如何忽略一个实体中的属性而不忽略另一个实体中的属性 - JSON

java - 如何验证俄语电子邮件?

java - eclipse : manually select main class for executable jar file

java - 从 Android 中的 HttpResponse 获取 header

Java背景

java - 模拟状态在 JUnit 测试方法调用之间丢失