diff --git a/src/main/java/org/bioimageanalysis/icy/deeplearning/versionmanager/downloading/DeepLearningVersionDownloader.java b/src/main/java/org/bioimageanalysis/icy/deeplearning/versionmanager/downloading/DeepLearningVersionDownloader.java
index f7afcbe2501bc8492ce75fdaeccddaab6bd786a6..325d33585116ed496e1a688b8cd6e40b27d09ff5 100644
--- a/src/main/java/org/bioimageanalysis/icy/deeplearning/versionmanager/downloading/DeepLearningVersionDownloader.java
+++ b/src/main/java/org/bioimageanalysis/icy/deeplearning/versionmanager/downloading/DeepLearningVersionDownloader.java
@@ -2,6 +2,7 @@ package org.bioimageanalysis.icy.deeplearning.versionmanager.downloading;
 
 import java.io.BufferedInputStream;
 import java.io.BufferedOutputStream;
+import java.io.File;
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.net.HttpURLConnection;
@@ -38,7 +39,7 @@ public class DeepLearningVersionDownloader
     /**
      * The path where Deep Learning libraries are downloaded.
      */
-    private static Path downloadsPath = Paths.get(".", "engines").toAbsolutePath();
+    private static Path downloadsPath = Paths.get("engines").toAbsolutePath();
 
     /**
      * Checks if the target Downloaded version is already downloaded locally.
@@ -303,5 +304,12 @@ public class DeepLearningVersionDownloader
         }).collect(Collectors.toList());
         return pathList;
     }
+    
+    public static void setEnginesDirectory(String dir) throws IOException {
+    	if (!(new File(dir).isDirectory()))
+    		throw new IOException("The engines directory must correspond to an already existing folder. "
+    				+ "The provided path is not  valid: " + dir);
+    	downloadsPath = Paths.get(dir);
+    }
 
 }