2012-03-25 14 views
3

を起動すると、アプリケーションにパラメータを渡すことができます。しかし、すでに(Java)アプリケーションを実行しているにパラメータを渡すにはどうすればよいですか?Javaプログラムでそのようなケースを処理するにはどうすればよいですか?すでに実行中のJavaアプリケーションとのCLI通信?

つまり、.batファイル/ CLIプロセスから既に実行中のJavaアプリケーションと通信するにはどうすればよいですか?

+0

*「既に実行中の(Java)アプリケーションにパラメータを渡すにはどうすればよいですか」*入力領域やその他のコントロールを持つGUIを作成する方法が1つあります。 –

+0

残念ながら私はバッチ統合が必要です。その場合、GUIは悪いことです。 –

答えて

1

私はクロスプラットフォームIPCのためにソケットを使用することを好むとApache thriftの助けを借りて(私は自分自身のアプリケーションであり、私はソースコードを適応させることができます) 。 CLIメソッドを実装して、CLIユーティリティから使用することができます。

+0

ありがとうございますが、実行中のajvaアプリケーションを新しいパラメータでもう一度呼び出すことはできません。アプリケーションを再実行する代わりに、新しいコマンドラインパラメータに反応してください。 –

+0

もちろん、 'main'メソッドのようなあなたのアプリケーションにユーティリティー機能を組み合わせることで、既にインスタンスが実行されているかどうかをチェックし、それに接続してCLI listenソケットを定義し、コマンドを送ることができます。 – secmask

+0

Apache Thriftに関する参考文献をありがとう。これは私にとって非常に便利で、私の仕事をかなり単純化することができます。 +1。 –

関連する問題