作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我能够通过普通的 java 类运行相同的代码。然而,当我将相同的代码移动到 springboot 中的服务类,并通过点击 url 从 Controller 调用该服务时,该命令不会运行或卡住很长时间。
Process process = new ProcessBuilder("CMD", "/C", command2).start();
.
.
.
process.waitFor();
process.destroy();
尝试了很多次,尝试了很多方法,还是没有找到解决办法。
命令是
"tool --f pathToFile".
最佳答案
尝试使用单独的参数,不要使用整个命令,而是将其分成单独的参数,如下所示:
try {
List<String> commands = new ArrayList<>();
commands.add("CMD");
commands.add("/C");
commands.add("tool");
commands.add("--f");
commands.add(pathToFile);
ProcessBuilder pb = new ProcessBuilder(commands);
try {
Process p = pb.start();
int j = p.waitFor();
int exitValue = p.exitValue();
System.out.println("Finished with code: " + j);
System.out.println("Finished with exitValue: " + exitValue);
} catch (Exception e) {
System.out.println("exception: " + e);
}
} catch (Exception e) {
e.printStackTrace();
}
关于java - 如何从 Spring Boot 服务运行 CMD 命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58131640/
我是一名优秀的程序员,十分优秀!