Java Directory Watcher

Watch and receive notifications on filesystem changes using Java 7 NIO's WatchService

License

License

GroupId

GroupId

com.darylteo
ArtifactId

ArtifactId

directorywatcher
Last Version

Last Version

1.1.0
Release Date

Release Date

Type

Type

jar
Description

Description

Java Directory Watcher
Watch and receive notifications on filesystem changes using Java 7 NIO's WatchService
Project URL

Project URL

http://github.com/darylteo/directorywatcher
Source Code Management

Source Code Management

http://github.com/darylteo/directorywatcher

Download directorywatcher

How to add to project

<!-- https://jarcasting.com/artifacts/com.darylteo/directorywatcher/ -->
<dependency>
    <groupId>com.darylteo</groupId>
    <artifactId>directorywatcher</artifactId>
    <version>1.1.0</version>
</dependency>
// https://jarcasting.com/artifacts/com.darylteo/directorywatcher/
implementation 'com.darylteo:directorywatcher:1.1.0'
// https://jarcasting.com/artifacts/com.darylteo/directorywatcher/
implementation ("com.darylteo:directorywatcher:1.1.0")
'com.darylteo:directorywatcher:jar:1.1.0'
<dependency org="com.darylteo" name="directorywatcher" rev="1.1.0">
  <artifact name="directorywatcher" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.darylteo', module='directorywatcher', version='1.1.0')
)
libraryDependencies += "com.darylteo" % "directorywatcher" % "1.1.0"
[com.darylteo/directorywatcher "1.1.0"]

Dependencies

test (1)

Group / Artifact Type Version
junit : junit jar 4.+

Project Modules

There are no modules declared in this project.

Directory Watcher for Java 7

Watches for changes in files and folders recursively. Features Ant style filtering patterns.

Distribution

Maven

<dependency>
  <groupId>com.darylteo</groupId>
  <artifactId>directory-watcher</artifactId>
  <version>1.2.0</version>
</dependency>

Gradle

dependencies {
  compile 'com.darylteo~directory-watcher~1.2.0'
}

Example

public class Example {
  public static void main(String[] args) {
    // Get Watcher
    ThreadPoolDirectoryWatchService factory = new ThreadPoolDirectoryWatchService(); // or PollingDirectoryWatchService
    DirectoryWatcher watcher = factory.newWatcher("");
    
    // Configure 
    watcher.include("src/**");
    watcher.exclude("bin");
    watcher.exclude("build");
    watcher.exclude("bin/**");
    watcher.exclude("build/**");
    
    // Subscribe
    watcher.subscribe(new DirectoryChangedSubscriber() {
      public void directoryChanged(DirectoryWatcher watcher, Path path) {
        System.out.println("Something changed! " + path.toString());
      }
    });
    
    // Cleanup
    factory.close();
  }
}

Documentation

Javadoc

Versions

Version
1.1.0
1.0.1
1.0.0