通过Java程序运行Java程序

通过Java程序运行Java程序,java,swing,jar,system.exit,Java,Swing,Jar,System.exit,我正在制作一个程序(3D扫雷舰),我在检测结果时遇到了问题。我尝试使用单独的线程来等待结果,但它不起作用(只是不起作用)。因此,我认为最简单的方法是使用两个独立的程序(不是问题),其中一个运行另一个(使用args,1.problem),并获取其System.exit()返回的值;(2.问题)。 我找到了一些解决第一个问题的例子,但没有解决第二个问题。有没有合适的方法,或者我必须将结果写入一个文件或其他什么? 顺便说一句,请随意更正语法,我只是在学习XD。如果您使用System.exec()运行程

我正在制作一个程序(3D扫雷舰),我在检测结果时遇到了问题。我尝试使用单独的线程来等待结果,但它不起作用(只是不起作用)。因此,我认为最简单的方法是使用两个独立的程序(不是问题),其中一个运行另一个(使用args,1.problem),并获取其System.exit()返回的值;(2.问题)。 我找到了一些解决第一个问题的例子,但没有解决第二个问题。有没有合适的方法,或者我必须将结果写入一个文件或其他什么?
顺便说一句,请随意更正语法,我只是在学习XD。

如果您使用
System.exec()
运行程序,请查看
进程的
waitFor()
返回值

Process p = Runtime.getRuntime().exec("cmd /C dir");
int rc = p.waitFor ();
System.out.println ("Exit code is " + rc);
您还可以查看进程的
exitValue()
,但您必须确保程序在可靠运行之前已经运行完成

Process p = Runtime.getRuntime().exec("cmd /C dir");
p.waitFor (); // make sure we run to completion
System.out.println ("Exit code is " + p.exitValue ());

从第二个程序启动第一个程序并获取退出值

Process myProcess=Runtime.getRuntime().exec(命令)


int-exitValue=myProcess.exitValue()

请输入一些代码。另外,定义“不工作”。上一次我检查时,运行线程确实在Java中起作用:)您的第一个解决方案(使用线程)几乎肯定会比尝试在启动另一个整个进程时做一些疯狂的事情更简单、更快、更易于维护。显示您的代码,我们会帮助您。好吧,另一个线程会导致游戏JFrame显示为空而没有响应谢谢,这正是我所需要的,当我得到15个代表时,您有一个向上投票XDI无法理解正确的命令,文件位于C:\Data\Patrik\Documents\Eclipse\mineswiper3D中,名为GameWindow.jar