Repository: incubator-gearpump Updated Branches: refs/heads/master ae56903da -> e7677f6d9
fix GEARPUMP-153, throw exception on main class load failure Author: manuzhang <[email protected]> Closes #34 from manuzhang/GEARPUMP-153. Project: http://git-wip-us.apache.org/repos/asf/incubator-gearpump/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-gearpump/commit/e7677f6d Tree: http://git-wip-us.apache.org/repos/asf/incubator-gearpump/tree/e7677f6d Diff: http://git-wip-us.apache.org/repos/asf/incubator-gearpump/diff/e7677f6d Branch: refs/heads/master Commit: e7677f6d9ba95f05bd952ecfcc2bef270d3d65ea Parents: ae56903 Author: manuzhang <[email protected]> Authored: Wed Jun 22 16:31:55 2016 -0700 Committer: Kam Kasravi <[email protected]> Committed: Wed Jun 22 16:31:55 2016 -0700 ---------------------------------------------------------------------- .../org/apache/gearpump/cluster/main/AppSubmitter.scala | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-gearpump/blob/e7677f6d/daemon/src/main/scala/org/apache/gearpump/cluster/main/AppSubmitter.scala ---------------------------------------------------------------------- diff --git a/daemon/src/main/scala/org/apache/gearpump/cluster/main/AppSubmitter.scala b/daemon/src/main/scala/org/apache/gearpump/cluster/main/AppSubmitter.scala index 98ec707..d0de51a 100644 --- a/daemon/src/main/scala/org/apache/gearpump/cluster/main/AppSubmitter.scala +++ b/daemon/src/main/scala/org/apache/gearpump/cluster/main/AppSubmitter.scala @@ -20,7 +20,6 @@ package org.apache.gearpump.cluster.main import java.io.File import java.net.{URL, URLClassLoader} import java.util.jar.JarFile -import scala.util.Try import org.slf4j.Logger @@ -79,10 +78,10 @@ object AppSubmitter extends AkkaApp with ArgumentsParser { } val classLoader: URLClassLoader = new URLClassLoader(Array(new URL("file:" + - jarFile.getAbsolutePath)), Thread.currentThread().getContextClassLoader()) + jarFile.getAbsolutePath)), Thread.currentThread().getContextClassLoader) val (main, arguments) = parseMain(jarFile, config.remainArgs, classLoader) - // Set to context classloader. ActorSystem pick context classloader in preference + // Set to context classLoader. ActorSystem pick context classLoader in preference Thread.currentThread().setContextClassLoader(classLoader) val clazz = classLoader.loadClass(main) val mainMethod = clazz.getMethod("main", classOf[Array[String]]) @@ -95,7 +94,8 @@ object AppSubmitter extends AkkaApp with ArgumentsParser { val mainInManifest = Option(new JarFile(jar).getManifest.getMainAttributes. getValue("Main-Class")).getOrElse("") - if (remainArgs.length > 0 && Try(classLoader.loadClass(remainArgs(0))).isSuccess) { + if (remainArgs.length > 0) { + classLoader.loadClass(remainArgs(0)) (remainArgs(0), remainArgs.drop(1)) } else if (mainInManifest.nonEmpty) { (mainInManifest, remainArgs)
