在代码中调用Java控制台命令

时间:2013-01-29 21:48:23

标签: java

这可能听起来很愚蠢。但是它可能吗?我正在考虑创建一个允许某人在其中编码的程序,然后运行代码来测试输出。当然,要做到这一点,我需要能够从Java中编译和运行Java。提前谢谢。

2 个答案:

答案 0 :(得分:2)

JDK6添加了compiler tools api

那应该做你想要的。

答案 1 :(得分:0)

您可以尝试使用以下代码片段从java程序模拟终端或命令行...

import java.io.IOException;


public class Test {
    public static void main(String[] args) throws IOException {
        Process p = Runtime.getRuntime().exec(new String[]{"bash","-c","echo abc > test.txt"});
        p = Runtime.getRuntime().exec(new String[]{"bash","-c","java HelloWorld > test.txt"});

    }
}

所以这段代码基本上做的是它执行一个bash shell,它执行各种shell命令,如echo abc > test.txt(main方法中的第一行)或java HelloWorld > test.txt(第二行)主要方法)。所以在这里,它就像启动shell命令但是来自Java程序