2

外部プログラムの実行を容易にする Java ライブラリを探しています。今、私はそれらを別のスレッドで「手動で」実行し、I/O をキャプチャします。

実行するいくつかの異なる外部ツールがあり、必要なのはそれを行うための統一されたアプローチです。私が処理しなければならないタスクは次のとおりです。 - 定義済みのテンプレートに従って入力ファイルを準備する - コマンドを実行する - 結果を待ち、出力ファイルを解析する - パイプラインを維持する

パイプライン全体は、外部ツールをノードとして、データ フローをエッジとして持つグラフと見なすことができます。データフローが許せば、ソフトウェアがいくつかのコマンドを並列スレッドで実行できれば素晴らしいことです。

そのような問題の既存の解決策はありますか?

私が得た答えに基づいて、明確にする必要があると感じています.パイプは必要ありません。とにかく必要なファイルでデータフローを解決できます。さらに、パイプは線形でなければなりません (1 出力 -> 1 入力) が、グラフが必要です

私はすでにPythonで一種のプロトタイプを持っています - たくさんのスクリプトです。それは良いですが、私にとってはスケーラブルではありません。さらに、私が呼び出すプログラムの一部は Java で作成されているため、すべてを Java で作成すると便利です。ベスト、ティム

4

2 に答える 2

1

アリはこれにぴったりだと思います 。また、ファイル処理を行うためのかなり優れたJavaライブラリもあります。それとおそらくベロシティテンプレートの間で、私はあなたがあなたが望むことをすることができるはずだと思います。

于 2011-01-22T13:26:30.347 に答える
1

Unix を使用している場合は、Unix シェル コマンド ラインを動的に (パイプ、リダイレクトteeなどを使用して) 構築し、この 1 つのコマンドを使用してProcessBuilder、または同様の方法で生成することを考えたことはあります/bin/sh -cか?

これは、パイプ、バッファリング、エラー コレクション、およびリソースの管理を処理する既存の作業インフラストラクチャを利用していることを意味します。

于 2011-01-22T13:05:16.697 に答える