Backport more fixes from mvn40 to mvn39 code
diff --git a/daemon-m39/src/main/java/org/apache/maven/cli/DaemonMavenCli.java b/daemon-m39/src/main/java/org/apache/maven/cli/DaemonMavenCli.java
index 90de074..ebc4dba 100644
--- a/daemon-m39/src/main/java/org/apache/maven/cli/DaemonMavenCli.java
+++ b/daemon-m39/src/main/java/org/apache/maven/cli/DaemonMavenCli.java
@@ -185,8 +185,7 @@
         slf4jLogger = slf4jLoggerFactory.getLogger(this.getClass().getName());
         plexusLoggerManager = new Slf4jLoggerManager();
 
-        ClassLoader cl = Thread.currentThread().getContextClassLoader();
-        classWorld = new ClassWorld("plexus.core", cl);
+        this.classWorld = ((ClassRealm) Thread.currentThread().getContextClassLoader()).getWorld();
 
         container = container();
 
@@ -480,6 +479,7 @@
 
         List<File> extClassPath = Stream.of(
                         Environment.MVND_EXT_CLASSPATH.asString().split(","))
+                .filter(s -> s != null && !s.isEmpty())
                 .map(File::new)
                 .collect(Collectors.toList());