2016-09-16 4 views
0

JavaでProcessBuilderを使用してスクリプトを起動します。そのスクリプトはappiumサーバーを起動し、Javaプログラムの終了後も開いたままにします。Macで新しい端末を開き、パラメータがJavaであるスクリプトを実行します

String[] command = {"/bin/sh", currentDirectory + "/Script/launchVM_Node/" + launchAppiumServer.sh, IPADRESS }; 

ProcessBuilder ps =new ProcessBuilder(command); 
ps.start(); 

launchAppiumServer.sh:

ssh [email protected]$1 "source /etc/profile; appium serverArgs " 

だから、これは何の問題も作業していない、しかし、すぐにJavaプログラムの終了など、それはサーバーを閉じるだから私はこのような何かを持っています。だから私の回避策は、新しい端末を開いてそこにスクリプトを起動することでした。以下のような何か:

String[] command = {"open -b com.apple.terminal", currentDirectory + "/Script/launchVM_Node/" + launchAppiumServer.sh, IPADRESS }; 

しかし、それは働いていません。新しい端末を開き、スクリプトを起動してパラメータを渡すにはどうすればいいですか? (私のJavaプログラムの終わりではそれは終了しません)

答えて

0

スクリプトの最後に; bashを追加してみてください。これは基本的に端末に最後に新しいbashシェルを開くように指示します。このシェルは、手動で閉じるまでオープンしたままになります。

関連する問題