diff --git a/exist-core/src/main/java/org/exist/repo/AutoDeploymentTrigger.java b/exist-core/src/main/java/org/exist/repo/AutoDeploymentTrigger.java index 1712b6cd186..6f376045cce 100644 --- a/exist-core/src/main/java/org/exist/repo/AutoDeploymentTrigger.java +++ b/exist-core/src/main/java/org/exist/repo/AutoDeploymentTrigger.java @@ -35,9 +35,14 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; -import java.util.*; +import java.util.Comparator; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Optional; import java.util.function.Function; import java.util.stream.Collectors; +import java.util.stream.Stream; /** * Startup trigger for automatic deployment of application packages. Scans the "autodeploy" directory @@ -81,11 +86,11 @@ public void execute(final DBBroker sysBroker, final Txn transaction, final Map xars = Files - .find(autodeployDir, 1, (path, attrs) -> (!attrs.isDirectory()) && FileUtils.fileName(path).endsWith(".xar")) - .sorted(Comparator.comparing(Path::getFileName)) - .collect(Collectors.toList()); + try (Stream xarsStream = Files + .find(autodeployDir, 1, (path, attrs) -> (!attrs.isDirectory()) && FileUtils.fileName(path).endsWith(".xar")) + .sorted(Comparator.comparing(Path::getFileName))) { + + final List xars = xarsStream.collect(Collectors.toList()); LOG.info("Scanning autodeploy directory. Found {} app packages.", xars.size());