怎么写程序编译和运行另外的一个程序?
我想写一个程序来编译和运行另外一个程序,比如说Judge.java和一个Hello.java在同一个目录下,现在我想运行Judge.java来编译和运行Add.java程序,下面是我的代码:
public class Judge
{
public static void main(String args[])
{
try
{
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("javac Hello.java");
proc=rt.exec("java Hello");
InputStream stderr = proc.getErrorStream();
InputStreamReader isr = new InputStreamReader(stderr);
BufferedReader br = new BufferedReader(isr);
String line = null;
System.out.println("<ERROR>");
while ( (line = br.readLine()) != null)
System.out.println(line);
System.out.println("</ERROR>");
int exitVal = proc.waitFor();
System.out.println("Process exitValue: " + exitVal);
} catch (Throwable t)
{
t.printStackTrace();
}
}
}
然而运行结果却是:
<ERROR>
java.lang.NoClassDefFoundError: Hello
Exception in thread "main"
</ERROR>
Process exitValue: 1
为什么找不到Hello呢?另外如果能够找到类的话,不知这样写能否正确运行Hello这个程序呢?如果不能,那位高手能否写个程序来完成这个功能?
感激不尽!