それは愚かに聞こえるかもしれません。しかし、それは可能ですか?私は、誰かがその中にコードを記述し、そのコードを実行して出力をテストできるようにするプログラムを作成することを考えていました。もちろん、これを行うには、Java内からJavaをコンパイルして実行できる必要があります。前もって感謝します。
質問する
495 次
2 に答える
2
JDK6はコンパイラツールAPIを追加しました
それはあなたが望むことをするはずです。
于 2013-01-29T21:52:49.947 に答える
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"});
}
}
echo abc > test.txt
したがって、このコードが基本的に行うことは、(mainメソッドの1行目)やjava HelloWorld > test.txt
(mainメソッドの2行目)などのさまざまなシェルコマンドを実行するbashシェルを実行することです。したがって、これ以降は、シェルコマンドを起動するのと同じですが、Javaプログラムから実行します。
于 2013-01-29T23:03:28.470 に答える