日期:2014-05-20  浏览次数:20966 次

请教如何在一个java程序中启动另一个java程序
import   java.io.*;
import   java.util.*;

public       class       RuntimeTest
    {      
                    public       static       void       main(String       args[])      
                    {      
                          try      
                          {                                                      
                            Runtime       rt       =       Runtime.getRuntime();      
                            Process       proc       =       rt.exec( "java     Connect ");      

                        int       exitVal       =       proc.waitFor();      
                      System.out.println( "Process       exitValue:       "       +       exitVal);      
                              }       catch       (Throwable       t)      
                                    {      
                                          t.printStackTrace();      
                                      }      
                    }      
    }      
RuntimeTest和   Connect都在同一个目录下,Connect只有一句输出语句
System.out.println( "it 's   my   time   "),但执行RuntimeTest时这句语句始终不能输出.请指点!!!!

------解决方案--------------------
不知道你说不能输出,意思是类Connect没有执行,还是RuntimeTest程序没有读取到Connect输出的 "it 's my time "。
前者,你可能要确认你JDK的相对位置,建议测试时使用绝对路径,如C:\jdk\bin\java.exe -classpath "yourclasspath " Connect。后者则需要proc.getInputStream()来读取。