Javaプログラムから「javacおよびjavaコマンド」を実行する方法はありますか?
もしそうなら、私を助けてください....
7 に答える
のようにRuntime.getRuntime().exec("javac ...");
?
これを行うために使用できますRuntime.getRuntime.exec()
。しかし、いくつかの一般的なトラップがあります。「Runtime.exec() が正しく機能しない場合」に関するこの記事では、それらのいくつかを強調しています。
ProcessBuilderクラスを使用できます
ProcessBuilder pb =
new ProcessBuilder("javac", "arg1, "arg2");
javacを実行する代わりに、http://docs.oracle.com/javase/6/docs/technotes/tools/を使用することをお勧めします。それはあなたにはるかに多くの制御を与え、使用可能な情報を返します
エクスプローラーを開く:<code> Runtime.getRuntime()。exec( "explorer"); だから私は推測Runtime.getRuntime().exec("java");
し、Runtime.getRuntime().exec("javac");
あなたはそれを試してみることができます。
最善の方法は、OS シェルを呼び出して実行し、次に javac および Java ツールを渡すことです。
inputstream を使用して結果を取得し、それを出力します
シンプルな API を提供するApache Commons Execを使用することをお勧めします。乾杯!