Runtime.getRuntime.exec(command)を使用していくつかのJavaファイルをコンパイルしようとし、コマンドを生成しています。以下のコードは、私が行っていることを示しています。
String command = "javac ";
for(String s: this.getPackages())
{
command = command + "/home/benuni/CompileFiles/" + project + "/" + s + "/*.java ";
}
try {
System.out.println("command: '"+ command +"'");
Process pro = Runtime.getRuntime().exec(command);
printLines(" stderr:", pro.getErrorStream());
pro.waitFor();
これにより、次の出力が得られます。
command: 'javac /home/benuni/CompileFiles/HelloWorldProject/HelloWorldPackage/*.java '
stderr: javac: file not found: /home/benuni/CompileFiles/HelloWorldProject/HelloWorldPackage/*.java
stderr: Usage: javac <options> <source files>
stderr: use -help for a list of possible options
そしてそれは機能しません..しかし、コマンドをシェルにコピーすると、問題なく機能します...何かアイデアはありますか?