diff --git a/kyuubi-server/src/main/scala/org/apache/kyuubi/engine/spark/SparkProcessBuilder.scala b/kyuubi-server/src/main/scala/org/apache/kyuubi/engine/spark/SparkProcessBuilder.scala index 47351d4e1..47077fbad 100644 --- a/kyuubi-server/src/main/scala/org/apache/kyuubi/engine/spark/SparkProcessBuilder.scala +++ b/kyuubi-server/src/main/scala/org/apache/kyuubi/engine/spark/SparkProcessBuilder.scala @@ -42,16 +42,17 @@ class SparkProcessBuilder( val cwd = getClass.getProtectionDomain.getCodeSource.getLocation.getPath .split("kyuubi-server") assert(cwd.length > 1) - Paths.get(cwd.head) - .resolve("externals") - .resolve("kyuubi-download") - .resolve("target") - .toFile - .listFiles(new FilenameFilter { - override def accept(dir: File, name: String): Boolean = { - dir.isDirectory && name.startsWith("spark-") - } - }).headOption.map(_.getAbsolutePath) + Option( + Paths.get(cwd.head) + .resolve("externals") + .resolve("kyuubi-download") + .resolve("target") + .toFile + .listFiles(new FilenameFilter { + override def accept(dir: File, name: String): Boolean = { + dir.isDirectory && name.startsWith("spark-")}})) + .flatMap(_.headOption) + .map(_.getAbsolutePath) } sparkHomeOpt.map{ dir =>