能否打开命令提示符(以及其他系统的终端),并在新打开的窗口中执行命令?
目前,我拥有的是这个:
Runtime rt = Runtime.getRuntime();
rt.exec(new String[]{"cmd.exe","/c","start"});
我尝试在“start”之后添加下一个命令,我还尝试运行另一个包含我的命令的rt.exec,但我找不到使其工作的方法。
如果有影响的话,我正在尝试运行类似于这个的命令:
java -flag -flag -cp terminal-based-program.jar
编辑 很遗憾,我发现了一些奇怪的问题。我已经成功启动了命令提示符并传递了一个命令:
rt.exec("cmd.exe /c start command");
然而,它似乎只能使用一个命令。因为如果我尝试像这样使用命令分隔符“cmd.exe /c start command&command2”,第二个命令会被传递到后台(就像我只使用了rt.exec("command2");一样)。现在问题是,我意识到需要更改命令提示符正在运行的目录,因为如果我仅使用jar文件的完整路径,jar文件会错误地从命令提示符的活动目录中读取数据,而不是包含其资源的jar目录。