URLClassLoader.java (JarURLLoader.JarURLLoader): Don't look aside for "GCJLIBS" in directory where jarfiles are loaded.
* java/net/URLClassLoader.java (JarURLLoader.JarURLLoader): Don't look aside for "GCJLIBS" in directory where jarfiles are loaded. (JarURLLoader.getClass): Removed method. (JarURLLoader.toString): Removed method. (FileResource.toString): Removed method. From-SVN: r95076
This commit is contained in:
parent
affa5a3418
commit
d9fdd0d60f
2 changed files with 41 additions and 74 deletions
|
@ -1,3 +1,11 @@
|
|||
2005-02-15 Mark Wielaard <mark@klomp.org>
|
||||
|
||||
* java/net/URLClassLoader.java (JarURLLoader.JarURLLoader): Don't look
|
||||
aside for "GCJLIBS" in directory where jarfiles are loaded.
|
||||
(JarURLLoader.getClass): Removed method.
|
||||
(JarURLLoader.toString): Removed method.
|
||||
(FileResource.toString): Removed method.
|
||||
|
||||
2005-02-15 Mark Wielaard <mark@klomp.org>
|
||||
|
||||
* javax/net/ssl/SSLContext.java (getInstance): Add exception message
|
||||
|
|
|
@ -306,8 +306,6 @@ public class URLClassLoader extends SecureClassLoader
|
|||
|
||||
Vector classPath; // The "Class-Path" attribute of this Jar's manifest
|
||||
|
||||
SoURLLoader soURLLoader;
|
||||
|
||||
public JarURLLoader(URLClassLoader classloader, URL baseURL)
|
||||
{
|
||||
super(classloader, baseURL);
|
||||
|
@ -320,70 +318,48 @@ public class URLClassLoader extends SecureClassLoader
|
|||
sb.append("!/");
|
||||
String jarURL = sb.toString();
|
||||
|
||||
this.soURLLoader = null;
|
||||
this.classPath = null;
|
||||
URL baseJarURL = null;
|
||||
JarFile jarfile = null;
|
||||
try
|
||||
{
|
||||
baseJarURL
|
||||
= new URL(null, jarURL, classloader.getURLStreamHandler("jar"));
|
||||
jarfile
|
||||
= ((JarURLConnection) baseJarURL.openConnection()).getJarFile();
|
||||
|
||||
if (jarfile != null)
|
||||
baseJarURL =
|
||||
new URL(null, jarURL, classloader.getURLStreamHandler("jar"));
|
||||
|
||||
jarfile =
|
||||
((JarURLConnection) baseJarURL.openConnection()).getJarFile();
|
||||
|
||||
Manifest manifest;
|
||||
Attributes attributes;
|
||||
String classPathString;
|
||||
|
||||
if ((manifest = jarfile.getManifest()) != null
|
||||
&& (attributes = manifest.getMainAttributes()) != null
|
||||
&& ((classPathString
|
||||
= attributes.getValue(Attributes.Name.CLASS_PATH))
|
||||
!= null))
|
||||
{
|
||||
String fileName = baseURL.getFile();
|
||||
if (fileName != null)
|
||||
{
|
||||
File f = new File(fileName);
|
||||
String libDirName = f.getCanonicalFile().getParent()
|
||||
+ File.separator + "GCJLIBS";
|
||||
File libDir = new File(libDirName);
|
||||
if (libDir != null && (libDir.isDirectory()))
|
||||
this.classPath = new Vector();
|
||||
|
||||
StringTokenizer st
|
||||
= new StringTokenizer
|
||||
(classPathString,
|
||||
System.getProperty ("path.separator", ":"));
|
||||
|
||||
while (st.hasMoreElements ())
|
||||
{
|
||||
String e = st.nextToken ();
|
||||
try
|
||||
{
|
||||
File soFile = new File (libDirName
|
||||
+ File.separator + f.getName()
|
||||
+ ".so");
|
||||
if (soFile != null && soFile.isFile())
|
||||
this.soURLLoader
|
||||
= new SoURLLoader (classloader, soFile.toURL(),
|
||||
baseURL);
|
||||
URL url = new URL(baseURL, e);
|
||||
this.classPath.add(url);
|
||||
}
|
||||
catch (java.net.MalformedURLException xx)
|
||||
{
|
||||
// Give up
|
||||
}
|
||||
}
|
||||
|
||||
Manifest manifest;
|
||||
Attributes attributes;
|
||||
String classPathString;
|
||||
|
||||
if ((manifest = jarfile.getManifest()) != null
|
||||
&& (attributes = manifest.getMainAttributes()) != null
|
||||
&& ((classPathString
|
||||
= attributes.getValue(Attributes.Name.CLASS_PATH))
|
||||
!= null))
|
||||
{
|
||||
this.classPath = new Vector();
|
||||
|
||||
StringTokenizer st
|
||||
= new StringTokenizer
|
||||
(classPathString,
|
||||
System.getProperty ("path.separator", ":"));
|
||||
|
||||
while (st.hasMoreElements ())
|
||||
{
|
||||
String e = st.nextToken ();
|
||||
try
|
||||
{
|
||||
URL url = new URL(baseURL, e);
|
||||
this.classPath.add(url);
|
||||
}
|
||||
catch (java.net.MalformedURLException xx)
|
||||
{
|
||||
// Give up
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (IOException ioe)
|
||||
{
|
||||
|
@ -394,13 +370,6 @@ public class URLClassLoader extends SecureClassLoader
|
|||
this.jarfile = jarfile;
|
||||
}
|
||||
|
||||
Class getClass(String className)
|
||||
{
|
||||
if (soURLLoader != null)
|
||||
return soURLLoader.getClass(className);
|
||||
return null;
|
||||
}
|
||||
|
||||
/** get resource with the name "name" in the jar url */
|
||||
Resource getResource(String name)
|
||||
{
|
||||
|
@ -417,11 +386,6 @@ public class URLClassLoader extends SecureClassLoader
|
|||
return null;
|
||||
}
|
||||
|
||||
public String toString ()
|
||||
{
|
||||
return "jarfile " + jarfile.getName();
|
||||
}
|
||||
|
||||
Manifest getManifest()
|
||||
{
|
||||
try
|
||||
|
@ -672,11 +636,6 @@ public class URLClassLoader extends SecureClassLoader
|
|||
return (int) file.length();
|
||||
}
|
||||
|
||||
public String toString ()
|
||||
{
|
||||
return "file " +file.getAbsolutePath();
|
||||
}
|
||||
|
||||
public URL getURL()
|
||||
{
|
||||
try
|
||||
|
|
Loading…
Add table
Reference in a new issue