package istlab.KisoJikken;
import java.io.File;
import java.io.IOException;
public class JCompiler implements Runnable {
Thread thread;
Process process;
String absolutePath;
String pkgname;
String javafname;
public JCompiler(String p) {
absolutePath = p;
thread = new Thread(this);
String[] ary = absolutePath.split("/");
for (int i = 0; i < ary.length; i++) {
if (ary[i].equals("src")) {
pkgname = ary[i + 1];
javafname = ary[i + 2];
break;
}
}
thread.start();
}
@Override
public void run() {
System.out.println("== コンパイル開始 ==");
ProcessBuilder processBuilder = new ProcessBuilder("bash", "-c",
"javac -encoding UTF-8 " + pkgname + "/*.java");
System.out.println("> cd ~" + App.nwpsrc);
System.out.println("> javac -encoding UTF-8 " + pkgname + "/*.java");
// ProcessBuilder processBuilder = new ProcessBuilder("pwd");
processBuilder.directory(new File(App.userhome + App.nwpsrc));
processBuilder.inheritIO();
try {
process = processBuilder.start();
// BufferedReader reader = new BufferedReader(new
// InputStreamReader(process.getInputStream()));
// String line;
// while ((line = reader.readLine()) != null) {
// jta.append(line);
// }
process.waitFor();
} catch (IOException | InterruptedException e1) {
e1.printStackTrace();
}
System.out.println("== コンパイル終了 ==");
thread = null;
}
}