28

Javaプロセス制御は悪名高いことで有名です-主にJavaVM/ JDKクラス(例:java.lang.Process)による不十分なサポートが原因です。

信頼できる優れたオープンソースライブラリはありますか?

要件は次のとおりです。

  1. OSS
  2. プロセスの開始/停止
  3. STDINとSTDOUTを管理する
  4. クロスプラットフォーム(少なくともLinux、Windows、Solaris、HP、IBMの順)
  5. (オプション)再起動可能
  6. (望ましい)成熟した
4

3 に答える 3

14

Apache Commons Execはどうですか?

于 2010-11-11T22:58:11.383 に答える
5

もう1つの要件...孤立したプロセスを強制終了するためのクロスプラットフォームのサポート。(およびApache Commons Exec)を使用java.lang.Processすると、Javaアプリケーションがハードストップ(kill -9)を実行したときに外部プロセスを強制終了する方法はありません。問題をうまく処理できるライブラリを見つけたいと思っています。

1つの解決策は、PIDをディスク上のリソースに格納し、Javaアプリケーションの再起動時にプロセスを強制終了することです。もちろん、これはプラットフォームに依存するので、優れたクロスプラットフォームライブラリは素晴らしいでしょう。

于 2010-12-16T20:18:52.120 に答える
5

Java Service Wrapperが探しているものかもしれません。これはクロスプラットフォームであり、Windows サービスとして開始し、IO をキャプチャし、一般的に Java アプリを完全に管理するために使用できます。とても軽くてデザインも良いです。Atlassian は製品 (Jira、Bamboo など) をラップするためにこれを使用しているため、実際にテストされています。

于 2008-10-11T05:39:47.720 に答える