sqoop-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alban Perillat (JIRA)" <j...@apache.org>
Subject [jira] [Created] (SQOOP-504) Windows bug: unable to load jar
Date Fri, 15 Jun 2012 16:30:42 GMT
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

        

Mime
View raw message