? net Index: ClassPathHacker.java =================================================================== RCS file: /cvsroot/shp2kml/KMLer/net/sourceforge/shp2kml/Attic/ClassPathHacker.java,v retrieving revision 1.3 diff -u -u -r1.3 ClassPathHacker.java --- ClassPathHacker.java 25 Aug 2005 13:40:06 -0000 1.3 +++ ClassPathHacker.java 29 Aug 2005 00:48:38 -0000 @@ -20,6 +20,7 @@ public static void addURL(URL u) throws IOException { URL urls[] = new URL[] { u }; + System.out.println("url: " + u.toString()); ClassLoader aCL = Thread.currentThread().getContextClassLoader(); URLClassLoader aUrlCL = new URLClassLoader(urls, aCL); Index: ClassPather.java =================================================================== RCS file: /cvsroot/shp2kml/KMLer/net/sourceforge/shp2kml/Attic/ClassPather.java,v retrieving revision 1.2 diff -u -u -r1.2 ClassPather.java --- ClassPather.java 24 Aug 2005 02:32:04 -0000 1.2 +++ ClassPather.java 29 Aug 2005 00:48:38 -0000 @@ -1,6 +1,7 @@ package net.sourceforge.shp2kml; import java.io.File; +import java.io.FileFilter; import java.io.FilenameFilter; import java.io.IOException; @@ -11,23 +12,19 @@ public class ClassPather { public static void loadClasses(String dirStr) { + loadClasses(new File(dirStr)); + } - File dir; - dir = new File(dirStr); - - FilenameFilter dirFilter = new FilenameFilter() { - public boolean accept(File dir, String name) { - - File test = new File(dir.getAbsoluteFile() + "/" + name); - return test.isDirectory(); + public static void loadClasses(File dir) { + FileFilter dirFilter = new FileFilter() { + public boolean accept(File pathname) { + return pathname.isDirectory(); } }; - String[] dirlist = dir.list(dirFilter); - int i = 0; - while (i < dirlist.length) { - ClassPather.loadClasses(dir.getAbsolutePath() + "/" + dirlist[i]); - i++; + File[] dirlist = dir.listFiles(dirFilter); + for (int i = 0; i < dirlist.length; i++) { + ClassPather.loadClasses(dirlist[i]); } // It is also possible to filter the list of returned files. @@ -38,31 +35,28 @@ } }; - String[] children = dir.list(jarFilter); - int j = 0; - String path = System.getProperty("java.class.path"); - String currJar; - while (j < children.length) { + File[] children = dir.listFiles(jarFilter); +// String path = System.getProperty("java.class.path"); +// String currJar; + for (int i = 0; i < children.length; i++) { // URLClassLoader cl = // (URLClassLoader)ClassLoader.getSystemClassLoader(); - currJar = dir.getAbsolutePath() + "/" + children[j]; - path += ":" + currJar; +// currJar = dir.getAbsolutePath() + "/" + children[j]; +// path += ":" + currJar; try { - ClassPathHacker.addFile(new File(currJar)); - System.setProperty("java.class.path", path); + ClassPathHacker.addFile(children[i]); +// System.setProperty("java.class.path", path); } catch (IOException e) { e.printStackTrace(); } - j++; } } public static void main(String[] args) { if (args.length == 1) { - ClassPather.loadClasses(args[1]); + ClassPather.loadClasses(args[0]); } else { System.out.println("Usage: classpather directory/to/scan/for/jars"); - } }