JavaからGitBashを実行したい
できた
ただし事前にC:\\program file\\git
を環境変数に追加しておく.(git-bash.exe と簡単に記述するため).MacやLinuxの場合は `cmd
ではなくて,対応するやつを使う.
private void openGitBash(String projectName) { try { // windows only ProcessBuilder pb = new ProcessBuilder("cmd", "/c", "start", "git-bash.exe"); pb.directory(new File(".\\" + projectName)); Process process = pb.start(); int ret = process.waitFor(); System.out.println(ret); } catch (IOException exception) { exception.printStackTrace(); } catch (InterruptedException exception) { exception.printStackTrace(); } }
pb.directory
で実行するディレクトリを指定できるのと,pb.start()
の例外処理をきちんとするのがポイント.
調べると,processBuilderではなく,Runtime を使用している記事も見かけるが,最近のJavaではprocessBuilderが良いようだ(Rntime も内部的に processBuilder になっているみたい)