私はプログラムでプログラムを開いてアプリケーションを閉じる方法を見つけようとしています。私は簡単しかしプロセスIDはどのようにしてjavaで取得できますか?
Runtime.getRuntime().exec(new String[] {"open", "<path to application>"});
、私はそれがライン
Runtime.getRuntime().exec(new String[] {"kill", "<process id#>"});
を使用することで閉じるように見つけることができる唯一の方法を使用してアプリケーションを起動することができ、私はID#その他を取得するために、とにかく見つけることができません手動で端末を開き、トップを使って#を見つけるよりも。このIDを取得するためのプログラム的な方法がある場合や、アプリケーションのオープンとクローズに関するより良い方法があれば、それについて聞きたいと思います。
おかげ
これはアプリケーションの起動には問題ありませんが、destroy()を呼び出した後でも実行され続けます –
サブプロセスがシグナルをトラップして無視していますか? (私はあなたが元の質問の言葉に基づいて* nixでWindowsではないと仮定します)。また、あなたはサブプロセスで何を実行していますか? –