这就是我想要做的:
我需要从一个 java 文件中启动两个 jar 文件,并且当我从第二个 jar 文件中读取特定状态时,我想从第一个启动的 jar 文件中调用一个方法。我想出了如何从那个 jar 文件中读取输出流。(我也知道,打印出来的不是jar文件,而是jar文件中的类。我只是用这种方式阐述了这个问题,以清楚地解释我使用一个java文件来启动两个jar文件)
long l = System.currentTimeMillis();
Process theProcess1 = Runtime.getRuntime().exec("java -jar \"C:/test.jar\"");
inStream = new BufferedReader(new InputStreamReader( theProcess1.getInputStream() ));
...
我现在可以读取 jar 文件的输出。
在一个特殊的关键字上,我希望第一个启动的 jar 运行某个方法(非静态)。
例如:
if(theProcess2 output a certain statuscode)
{
start a certain Method from executed jar file "in" theProcess1
}
我认为可以通过使用 theProcess1 输出来实现,但我不知道如何在 jar 文件中读取此流。(jar 文件不知道它是通过 java 文件启动的。
有任何想法吗?