mirror of
https://github.com/openRuyi-Project/gcc.git
synced 2026-06-27 05:45:52 +00:00
Connection.java (getJarFile): download and cache remote jar files.
* gnu/gcj/protocol/jar/Connection.java (getJarFile): download and cache remote jar files. * gnu/gcj/runtime/VMClassLoader.java: Don't construct jar URL, only add File.separator to URL when it is a directory. * java/lang/ClassLoader.java: Add Classpath javadoc. (parent): final. (getParent): Add (disabled) security check. (findLibrary): New default method. * java/net/JarURLConnection.java (getManifest): Implement. (getInputStream): Only create InputStream when entry exists. (getHeaders): Only use jarFileURLConnection or JarEntry to set length when they exist. * java/net/URLClassLoader.java: New/Rewritten version from Classpath. From-SVN: r59949
This commit is contained in:
committed by
Mark Wielaard
parent
24632117ce
commit
e825ca7ff5
@@ -1,4 +1,4 @@
|
||||
/* Copyright (C) 1999, 2001 Free Software Foundation
|
||||
/* Copyright (C) 1999, 2001, 2002 Free Software Foundation
|
||||
|
||||
This file is part of libgcj.
|
||||
|
||||
@@ -33,23 +33,10 @@ public final class VMClassLoader extends java.net.URLClassLoader
|
||||
String e = st.nextToken ();
|
||||
try
|
||||
{
|
||||
if (e.endsWith(".jar") || e.endsWith (".zip"))
|
||||
{
|
||||
File archive = new File (e);
|
||||
try {
|
||||
p.addElement(new URL("jar", "", -1, "file://"
|
||||
+ archive.getCanonicalPath ()
|
||||
+ "!/"));
|
||||
} catch (IOException ex) {
|
||||
// empty
|
||||
}
|
||||
}
|
||||
else if (e.endsWith ("/"))
|
||||
p.addElement (new URL("file", "", -1, e));
|
||||
else if (new File (e).isDirectory ())
|
||||
p.addElement (new URL("file", "", -1, e + "/"));
|
||||
if (!e.endsWith (File.separator) && new File (e).isDirectory ())
|
||||
p.addElement (new URL("file", "", -1, e + File.separator));
|
||||
else
|
||||
/* Ignore path element. */;
|
||||
p.addElement (new URL("file", "", -1, e));
|
||||
}
|
||||
catch (java.net.MalformedURLException x)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user