Thinking about it, the patch could be much simpler. Actually all you
need is the list of URLs. They are hardcoded but those jar files and
your build directory probably will never change again. It looks like
netlib-java is unmaintained and changes are unlikely. Please find
attached the updated version.

Cheers,

Markus
From: Markus Koschany <a...@debian.org>
Date: Mon, 25 Mar 2019 14:44:22 +0100
Subject: URLClassLoader

---
 src/org/netlib/generate/JavaGenerator.java | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/src/org/netlib/generate/JavaGenerator.java b/src/org/netlib/generate/JavaGenerator.java
index fda8e9d..15815de 100644
--- a/src/org/netlib/generate/JavaGenerator.java
+++ b/src/org/netlib/generate/JavaGenerator.java
@@ -51,6 +51,8 @@ import org.netlib.util.doubleW;
 import org.netlib.util.floatW;
 import org.netlib.util.intW;
 
+import java.net.MalformedURLException;
+
 /**
  * Due to the depressing number of LAPACK routines, it is much more efficient to
  * auto-generate the Java code for the wrapper and corresponding Java and JNI
@@ -643,7 +645,8 @@ class JavaGenerator {
 	 * @return all classes in a given package
 	 * @see http://forum.java.sun.com/thread.jspa?threadID=757391&messageID=4326850
 	 */
-	private List<Class<?>> getClasses(String packageName, IClassFilter filter) {
+	private List<Class<?>> getClasses(String packageName, IClassFilter filter)
+		throws MalformedURLException{
 		String packagePath = packageName.replace('.', '/');
 //		ArrayList<URL> classpath = new ArrayList<URL>();
 //		String[] classpathString = System.getProperty("java.class.path").split(":");
@@ -658,7 +661,14 @@ class JavaGenerator {
 //					log(Level.SEVERE, classpathString[i] + " " + ex.getMessage());
 //			}
 //		}
-		URL [] classpath = ((URLClassLoader) ClassLoader.getSystemClassLoader()).getURLs();
+		URL url1 = new URL("file:///usr/share/java/junit-3.8.2.jar");
+		URL url2 = new URL("file:///usr/share/java/f2jutil-0.8.1.jar");
+		URL url3 = new URL("file:///usr/share/java/jlapack-blas-0.8.jar");
+		URL url4 = new URL("file:///usr/share/java/jlapack-lapack-0.8.jar");
+		URL url5 = new URL("file:///usr/share/java/jlapack-xerbla-0.8.jar");
+		URL url6 = new URL("file:///build/netlib-java-0.9.3/build/classes/");
+
+		URL [] classpath = { url1, url2, url3, url4, url5, url6 };
 		List<Class<?>> result = new ArrayList<Class<?>>();
 		System.out.println(Arrays.toString(classpath));
 		for (URL url : classpath) {

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to