Alban Perillat created SQOOP-504:
------------------------------------
Summary: Windows bug: unable to load jar
Key: SQOOP-504
URL: https://issues.apache.org/jira/browse/SQOOP-504
Project: Sqoop
Issue Type: Bug
Components: codegen
Affects Versions: 1.4.2
Environment: Windows
Reporter: Alban Perillat
A piece of code was unix specific for loading a jar.
Here is the patch for a generic implementation (works for windows too):
(Or see github pull request : https://github.com/apache/sqoop/pull/1)
src/java/org/apache/sqoop/util/ClassLoaderStack.java
old new
... ... @@ -75,10 +75,10 @@ public final class ClassLoaderStack {
75 75 }
76 76 }
77 77
78 - String urlPath = "jar:file://" + new
File(jarFile).getAbsolutePath() + "!/";
79 - LOG.debug("Attempting to load jar through URL: " +
urlPath);
78 + URL url = new File(jarFile).toURI().toURL();
79 + LOG.debug("Attempting to load jar through URL: " + url);
80 80 LOG.debug("Previous classloader is " + prevClassLoader);
81 - URL [] jarUrlArray = {new URL(urlPath)};
81 + URL[] jarUrlArray = { url };
82 82 URLClassLoader cl = URLClassLoader.newInstance(jarUrlArray,
83 83 prevClassLoader);
84 84 try {
... ... @@ -87,7 +87,7 @@ public final class ClassLoaderStack {
87 87 LOG.debug("Testing class in jar: " + testClassName);
88 88 Class.forName(testClassName, true, cl);
89 89 }
90 - LOG.debug("Loaded jar into current JVM: " + urlPath);
90 + LOG.debug("Loaded jar into current JVM: " + url);
91 91 } catch (ClassNotFoundException cnfe) {
92 92 throw new IOException("Could not load jar " + jarFile
93 93 + " into JVM. (Could not find class "
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira