From 4391d4f08cd82a8b28771e1e34de976c819ad09a Mon Sep 17 00:00:00 2001 From: zhuzhe Date: Mon, 22 Apr 2019 17:39:54 +0800 Subject: [PATCH] =?UTF-8?q?AddonClassLoader=20=E6=94=AF=E6=8C=81=E8=B5=84?= =?UTF-8?q?=E6=BA=90=E8=AF=BB=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/jpress/core/addon/AddonClassLoader.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/jpress-core/src/main/java/io/jpress/core/addon/AddonClassLoader.java b/jpress-core/src/main/java/io/jpress/core/addon/AddonClassLoader.java index bc9cf17ee..6b96b9b35 100644 --- a/jpress-core/src/main/java/io/jpress/core/addon/AddonClassLoader.java +++ b/jpress-core/src/main/java/io/jpress/core/addon/AddonClassLoader.java @@ -31,6 +31,7 @@ import io.jboot.utils.ArrayUtil; import io.jpress.core.wechat.WechatAddon; import java.io.IOException; +import java.io.InputStream; import java.io.Serializable; import java.net.URL; import java.net.URLClassLoader; @@ -39,6 +40,7 @@ import java.util.Enumeration; import java.util.List; import java.util.jar.JarEntry; import java.util.jar.JarFile; +import java.util.zip.ZipEntry; public class AddonClassLoader extends URLClassLoader { @@ -162,4 +164,19 @@ public class AddonClassLoader extends URLClassLoader { } return false; } + + @Override + public InputStream getResourceAsStream(String name) { + InputStream superIs = super.getResourceAsStream(name); + if (superIs == null) { + try { + ZipEntry zipEntry = new ZipEntry(name); + return new JarFile(addonInfo.buildJarFile()).getInputStream(zipEntry); + } catch (IOException e) { + e.printStackTrace(); + return null; + } + } + return superIs; + } } -- Gitee