Javaまたは一部のEclipseプラグインを使用して、というプロセスを見つけ出すことが可能ですか?ネイティブコードにドロップダウンしますか?具体的には、Webブラウザが実行されているかどうかを判断し、ブラウザを再起動する必要があることをユーザーに知らせたいと考えています。Javaからのプロセスの検索
ネイティブコードは常にオプションですが、避けたい場合は別のJNIライブラリの設定を避けたいと思います。
Javaまたは一部のEclipseプラグインを使用して、というプロセスを見つけ出すことが可能ですか?ネイティブコードにドロップダウンしますか?具体的には、Webブラウザが実行されているかどうかを判断し、ブラウザを再起動する必要があることをユーザーに知らせたいと考えています。Javaからのプロセスの検索
ネイティブコードは常にオプションですが、避けたい場合は別のJNIライブラリの設定を避けたいと思います。
実際には重複した質問です(original oneを参照)。
実行中のプロセスを一覧表示し、その出力を解析するコマンドラインツールを実行する2つのオプションがあります。 LinuxでJayが述べたように、 "ps"を使うことができます.Windowsでは、GnuWin/cygwin/etcのpsポートやPsListなどのネイティブツールをバンドルするか、sampleを参照してください。
すでに知っている2番目のオプションは、JNIを使用することですが、コードをゼロから書く必要はありません。JniWrapperと考えることができます。一般的なネイティブOS機能に使いやすいJava APIを提供します。また、オープンソースプロジェクトの無料ライセンスも提供しています。
実行中のプロセスのリストをJavaから直接取得する方法はわかりません。 Linuxの場合は、 "ps"を実行するプロセスを作成し、プロセスのInputStreamを読み込んで結果をインターセプトし、解析することができます。これを行うには、JNIレベルまで下がる必要はありません。Processを使用してシェルコマンドを実行できます。
重複ポインタありがとうございます。私は検索を試みたが、明らかに私の検索で間違った方法で行った。 私はWindowsとOSXを気にする必要があるので、出力を削るだけで、自分がやっていることに十分なはずです。 –