java - 为什么 Java 中的 Runtime.getRuntime().exec() 找不到“chgport.exe”?
问题描述
在 Java 中,我尝试运行:
Process p = Runtime.getRuntime().exec("C:\\Windows\\System32\\chgport.exe");
以及
Process p = Runtime.getRuntime().exec("chgport.exe");
但得到以下异常:
java.io.IOException: Cannot run program "C:\Windows\System32\chgport.exe": CreateProcess error=2, 系统找不到指定的文件
我正在使用 NetBeans IDE,它使用管理员凭据运行。
解决方案
我试过你的代码,它工作正常,试试这样:
String[] command = {"chgport"};
ProcessBuilder pb = new ProcessBuilder(command);
pb.directory(new File("C:/Windows/System32/"));
pb.redirectErrorStream(true);
Process p = pb.start();
我从 Eclipse 中尝试了这两种方法,并且都运行良好是否有可能您没有以管理员权限运行 IDE?
您可以尝试关闭IDE并右键单击以管理员身份运行吗?
try {
Process p = Runtime.getRuntime().exec("C:\\Windows\\System32\\mspaint.exe");
p.waitFor();
String[] command = {"mspaint"};
ProcessBuilder pb = new ProcessBuilder(command);
pb.directory(new File("C:/Windows/System32/"));
pb.redirectErrorStream(true);
Process p2 = pb.start();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
推荐阅读
- google-analytics-api - Google Search Console API 未返回所有结果
- .net - Jenkins 一直显示错误为“MSBUILD:错误 MSB1009:项目文件不存在。” 在尝试使用 Jenkins 构建 .NET 核心应用程序时
- python - how to set correct batch_size and steps_per_epoch in keras?
- python - 在 Python 中使用 Pafy 库时遇到错误
- field - word中STYLEREF字段中的\n和\r有什么区别?
- quarkus - 当从 Intellij 执行测试时,添加 @QuarkusTest 会导致 docker 运行
- javascript - 使用 jspdf 和 html2canvas 自定义 PDF 结构
- flutter - 状态更改时不更新递归内部子元素
- python - ParserError:未知字符串格式:2020_09_01
- java - 使用 Maven 单独执行测试