Преглед на файлове

[livy] Allow users of repl to pass in the assembly jar

This is necessary for maven tests that put the .class files
on the classpath instead of the jar files.
Erick Tryzelaar преди 11 години
родител
ревизия
bebb7847a2
променени са 1 файла, в които са добавени 7 реда и са изтрити 1 реда
  1. 7 1
      apps/spark/java/livy-server/src/main/scala/com/cloudera/hue/livy/server/sessions/ProcessSession.scala

+ 7 - 1
apps/spark/java/livy-server/src/main/scala/com/cloudera/hue/livy/server/sessions/ProcessSession.scala

@@ -10,6 +10,7 @@ import scala.concurrent.Future
 
 object ProcessSession extends Logging {
 
+  val CONF_LIVY_REPL_JAR = "livy.repl.jar"
   val CONF_LIVY_REPL_CALLBACK_URL = "livy.repl.callback-url"
 
   def create(livyConf: LivyConf, id: String, lang: String): Session = {
@@ -30,7 +31,7 @@ object ProcessSession extends Logging {
       args += javaOpts
     }
 
-    args += Utils.jarOfClass(getClass).head
+    args += livyJar(livyConf)
     args += lang
 
     val pb = new ProcessBuilder(args)
@@ -46,7 +47,12 @@ object ProcessSession extends Logging {
     pb.redirectError(Redirect.INHERIT)
 
     pb.start()
+  }
 
+  private def livyJar(conf: LivyConf): String = {
+    conf.getOption(CONF_LIVY_REPL_JAR).getOrElse {
+      Utils.jarOfClass(getClass).head
+    }
   }
 }