diff --git a/src/main/org/apache/tools/ant/util/ScriptRunnerCreator.java b/src/main/org/apache/tools/ant/util/ScriptRunnerCreator.java index 7982f6729..d9f14f7f3 100644 --- a/src/main/org/apache/tools/ant/util/ScriptRunnerCreator.java +++ b/src/main/org/apache/tools/ant/util/ScriptRunnerCreator.java @@ -21,6 +21,7 @@ import java.util.Collections; import java.util.EnumMap; import java.util.EnumSet; import java.util.Map; +import java.util.Objects; import java.util.Set; import java.util.stream.Collectors; @@ -154,7 +155,8 @@ public class ScriptRunnerCreator { managers = EnumSet.of(manager); } return managers.stream().map(RUNNER_FACTORIES::get) - .map(f -> f.getRunner(project, language, classLoader)).findFirst() + .map(f -> f.getRunner(project, language, classLoader)).filter(Objects::nonNull) + .findFirst() .orElseThrow(() -> new BuildException( managers.stream().map(RUNNER_FACTORIES::get).map(f -> f.managerClass).collect( Collectors.joining("|", "Unable to load script engine manager (", ")"))));