Github user rcsenkbeil commented on the pull request:
https://github.com/apache/spark/pull/1929#issuecomment-52651504
@heathermiller Thanks for the feedback! It looks like @gkossakowski
commented here:
[SI-6052](https://issues.scala-lang.org/browse/SI-6502?focusedCommentId=70407&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-70407).
So, it looks like issues that might not be tackled by the current pull
request are as follows:
1. what should happen when appended jar contains package that overlap with
what's already on classpath?
2. what should happen when appended jar contains a class that shadows
existing class?
At least, he makes me believe that the invalidateClassPaths doesn't handle
that. While I didn't mention it in the pull request earlier, I made assumptions
that entries added wouldn't overlap with the existing classpaths. If the
feature is added later to properly handle this, even better. For now, it looks
like this implementation works as long as you don't add conflicting classpath
entries. @mateiz, I'm not sure if that is a small enough problem for you to
want this or not.
Personally, I haven't run into these issues with Apache libraries that I've
used with the patch. Nor have I run into issues trying out different jars for
testing such as oddballs like [JGoodies](http://www.jgoodies.com/) and
[lwjgl](http://lwjgl.org/). Obviously, if someone wants to import jars at
runtime, they need to be aware of conflicting classes.
I did just test this with the following files:
Placed inside TestJar.jar
```
package com.ibm.testjar;
public class TestClass {
public void runMe() {
System.out.println("I WAS RUN!");
}
}
```
Placed inside TestJar2.jar
```
package com.ibm.testjar;
public class TestClass2 {
public void runMe() {
System.out.println("I WAS ALSO RUN!");
}
}
```
And running yields something like this:
```
scala> :cp /path/to/TestJar.jar
scala> :cp /path/to/TestJar2.jar
scala> import com.ibm.testjar._
scala> new TestClass().runMe
I WAS RUN!
scala> new TestClass2().runMe
I WAS ALSO RUN!
```
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]