Index: trunk/src/org/openstreetmap/josm/Main.java
===================================================================
--- trunk/src/org/openstreetmap/josm/Main.java	(revision 9204)
+++ trunk/src/org/openstreetmap/josm/Main.java	(revision 9205)
@@ -556,4 +556,5 @@
         main = this;
         isOpenjdk = System.getProperty("java.vm.name").toUpperCase(Locale.ENGLISH).indexOf("OPENJDK") != -1;
+        fileWatcher.start();
 
         new InitializationTask(tr("Executing platform startup hook")) {
Index: trunk/src/org/openstreetmap/josm/io/FileWatcher.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/FileWatcher.java	(revision 9204)
+++ trunk/src/org/openstreetmap/josm/io/FileWatcher.java	(revision 9205)
@@ -31,4 +31,5 @@
 
     private WatchService watcher;
+    private Thread thread;
 
     private final Map<Path, StyleSource> styleMap = new HashMap<>();
@@ -41,12 +42,21 @@
         try {
             watcher = FileSystems.getDefault().newWatchService();
-            new Thread(new Runnable() {
+            thread = new Thread(new Runnable() {
                 @Override
                 public void run() {
                     processEvents();
                 }
-            }, "File Watcher").start();
+            }, "File Watcher");
         } catch (IOException e) {
             Main.error(e);
+        }
+    }
+
+    /**
+     * Starts the File Watcher thread.
+     */
+    public final void start() {
+        if (!thread.isAlive()) {
+            thread.start();
         }
     }
