使用Process p = runtime.getRuntime()。exec(“java classname。”)执行java文件

时间:2015-02-16 09:32:46

标签: java linux

我正在尝试运行以下程序

import java.io.*;
class classname
{  public static void main(String args[])throws IOException
{
InputStreamReader reader=new InputStreamReader(System.in);
BufferedReader in=new BufferedReader(reader);
int t=Integer.parseInt(in.readLine());
System.out.println(t);
} }

我创建了一个单独的文件input_file,其中输入为89

但是当我尝试通过

执行以下代码时
Process p=runtime.getRuntime().exec("java classname <input_file" );

它不会执行

我试图知道如何使用java Runtime或ProcessBuilder执行这些文件重定向命令。

我正在尝试创建一个Web界面 Web界面类似于在线编译器,例如ideone.com

用户将在输入textarea中输入其输入,代码中的代码为

当用户点击编译时,它将显示输出

但是我无法将输入文件的输出重定向到java classname

1 个答案:

答案 0 :(得分:0)

java命令不实现重定向。为此,您需要运行一个封闭的命令shell,例如sh -ccmd /c