2016-07-21 13 views
1

をトリガーする必要があり、私は次のような問題があります。配置javaアプリケーション

javaアプリケーションは、ファイルシステム内のファイルの配置によってトリガする必要があります。私は、新しいファイルがシステムにあるかどうかを調べるために、アプリケーションが定期的な時間間隔でファイルシステムを検索するポーリングソリューションを避けようとしています。

ファイルシステムにファイルを配置するイベントによってアプリケーションを起動する方法はありますか?

+1

あなたがサポートしている必要がありますどのようなJavaのバージョンと言うことが重要です。古いバージョンではこれを直接行うことはできません。 –

+0

Java 1.7または1.8 – uztrew

+0

新機能が組み込まれています。 –

答えて

1

Oracleは、実際には、このトピックの周りの素敵なチュートリアルがあります。

https://docs.oracle.com/javase/tutorial/essential/io/notification.html

は、このAPIを使用して使用しないようにしウォッチサービスAPIをする必要があるアプリケーションのために設計されて

ファイル変更イベントについて通知されます。これは、エディタやIDEのような、開いているファイルが多い可能性があり、ファイルシステムと同期する必要があるアプリケーションに適しています。また、.jspファイルや.jarファイルをデプロイするためにドロップするのを待っているディレクトリを監視するアプリケーションサーバーにも適しています。

1

jnotifyまたは新しいJavaファイルI/O(NIO.2)パッケージを使用すると、カーネルイベントをポーリングして、ファイルシステムの変更を通知します。どちらのソリューションもカーネルフックであり、必要なものを提供しながらリソースを使い果たしません。

チェックアウトhttp://jnotify.sourceforge.net/linux.html JNotifyまたはNIO.2詳細は

+0

jnotifyはLinux上でのみ動作します。これは重要かもしれません。 –

関連する問題