Merge branch '1.4.x' into 1.5.x

This commit is contained in:
Andy Wilkinson 2016-10-18 13:47:20 +01:00
commit b7c55fb192

View File

@ -24,9 +24,9 @@ import java.net.URLConnection;
import java.security.AccessController;
import java.security.PrivilegedExceptionAction;
import java.util.Enumeration;
import java.util.jar.JarFile;
import org.springframework.boot.loader.jar.Handler;
import org.springframework.boot.loader.jar.JarFile;
/**
* {@link ClassLoader} used by the {@link Launcher}.
@ -131,8 +131,10 @@ public class LaunchedURLClassLoader extends URLClassLoader {
String classEntryName = className.replace(".", "/") + ".class";
for (URL url : getURLs()) {
try {
if (url.getContent() instanceof JarFile) {
JarFile jarFile = (JarFile) url.getContent();
URLConnection connection = url.openConnection();
if (connection instanceof JarURLConnection) {
JarFile jarFile = ((JarURLConnection) connection)
.getJarFile();
if (jarFile.getEntry(classEntryName) != null
&& jarFile.getEntry(packageEntryName) != null
&& jarFile.getManifest() != null) {
@ -175,8 +177,8 @@ public class LaunchedURLClassLoader extends URLClassLoader {
private void clearCache(URLConnection connection) throws IOException {
Object jarFile = ((JarURLConnection) connection).getJarFile();
if (jarFile instanceof JarFile) {
((JarFile) jarFile).clearCache();
if (jarFile instanceof org.springframework.boot.loader.jar.JarFile) {
((org.springframework.boot.loader.jar.JarFile) jarFile).clearCache();
}
}