diff options
author | Michael Armbrust <michael@databricks.com> | 2014-04-22 21:56:15 -0700 |
---|---|---|
committer | Patrick Wendell <pwendell@gmail.com> | 2014-04-22 22:02:42 -0700 |
commit | 8e950813334dd8545357f59f4ed77c39ee4180b3 (patch) | |
tree | b2e02fa5ff898bc769a922b7eccb678c4b45ae8e /tools/src | |
parent | aa77f8a6a604efe0d02bc8412b3f1ba3903b7a57 (diff) | |
download | spark-8e950813334dd8545357f59f4ed77c39ee4180b3.tar.gz spark-8e950813334dd8545357f59f4ed77c39ee4180b3.tar.bz2 spark-8e950813334dd8545357f59f4ed77c39ee4180b3.zip |
SPARK-1494 Don't initialize classes loaded by MIMA excludes.
[WIP] Just seeing how Jenkins likes this...
Author: Michael Armbrust <michael@databricks.com>
Closes #494 from marmbrus/mima and squashes the following commits:
6eec616 [Michael Armbrust] Force hive tests to run.
acaf682 [Michael Armbrust] Don't initialize loaded classes.
Diffstat (limited to 'tools/src')
-rw-r--r-- | tools/src/main/scala/org/apache/spark/tools/GenerateMIMAIgnore.scala | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/tools/src/main/scala/org/apache/spark/tools/GenerateMIMAIgnore.scala b/tools/src/main/scala/org/apache/spark/tools/GenerateMIMAIgnore.scala index 3fb85e1ff7..d9978b02a9 100644 --- a/tools/src/main/scala/org/apache/spark/tools/GenerateMIMAIgnore.scala +++ b/tools/src/main/scala/org/apache/spark/tools/GenerateMIMAIgnore.scala @@ -41,7 +41,7 @@ object GenerateMIMAIgnore { private def classesPrivateWithin(packageName: String): Set[String] = { - val classes = getClasses(packageName, classLoader) + val classes = getClasses(packageName) val privateClasses = mutable.HashSet[String]() def isPackagePrivate(className: String) = { @@ -108,8 +108,7 @@ object GenerateMIMAIgnore { * Scans all classes accessible from the context class loader which belong to the given package * and subpackages both from directories and jars present on the classpath. */ - private def getClasses(packageName: String, - classLoader: ClassLoader = Thread.currentThread().getContextClassLoader): Set[String] = { + private def getClasses(packageName: String): Set[String] = { val path = packageName.replace('.', '/') val resources = classLoader.getResources(path) @@ -128,7 +127,7 @@ object GenerateMIMAIgnore { val jar = new JarFile(new File(jarPath)) val enums = jar.entries().map(_.getName).filter(_.startsWith(packageName)) val classes = for (entry <- enums if entry.endsWith(".class")) - yield Class.forName(entry.replace('/', '.').stripSuffix(".class")) + yield Class.forName(entry.replace('/', '.').stripSuffix(".class"), false, classLoader) classes } } |