对于我的应用程序,我使用 SUMO(模拟某条路线上的流量的应用程序)。
当使用正确的参数启动这个程序时,它将生成一个输出。但是必须从命令行启动这个模拟。所以我想用一个procesBuilder来解决这个问题,但这没有用。我发现很多人对这个 procesBuilder 有问题,但是在阅读了如何用它执行我的命令行后我不明白。
需要执行的命令是:
"sumo -c \"" + path + FILENAME_CONFIG + "\" --netstate-dump " + ouputPath"
Sumo 位于我的桌面
"C:\Users\Samee\Desktop\SUMO\sumo-0.17.0\bin"
现在我确实通过将上述信息放入一个bat文件并运行bat文件来解决这个问题。(在使用 Cd .. 导航并设置路径时。我如何运行 bat 文件:
Process rt = Runtime.getRuntime().exec("cmd /c start " + generator.getPath() + Generator.FILENAME_BAT);
但我需要知道模拟何时停止模拟。这可以解决procesBuilder
吗?
喜欢:
ProcessBuilder builder = new ProcessBuilder("sumo -c \"" + path + FILENAME_CONFIG + "\" --netstate-dump " + ouputPath);
我怎么知道 ProcessBuilder 是否执行完毕?