【发布时间】:2015-01-25 23:53:15
【问题描述】:
我正在开发一个小的 Java jar 应用程序,用于使用 BaseX 服务器在 file.xml 中存储数据。 一开始,在主程序启动之前,我需要正确启动并激活 Basex Server。所以这就是我所做的:
Runtime runtime = Runtime.getRuntime();
if (isWindows(os)) {
Process server = runtime.exec("cmd /C basexserver.bat");
System.out.println(server.waitFor());
}
else {
if (isLinux(os)) {
runtime.exec("basexserver");
}
}
为了检查 BaseXServer 是否正确运行,我尝试检查 waitFor 方法返回的值,如果该值等于 0,则命令成功执行,如果返回值大于 0,则发生错误。问题是这个方法总是返回 1 但命令“basexserver.bat”是正确的。为什么?
【问题讨论】:
标签: java xml windows command-line command