From 8b653204917aa52db247ebebe5f0281ffdf38d4c Mon Sep 17 00:00:00 2001 From: redkale Date: Thu, 21 Sep 2023 19:41:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96native-image?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/org/redkale/util/Copier.java | 2 +- src/main/java/org/redkale/util/Inners.java | 1 + src/main/java/org/redkale/util/RedkaleClassLoader.java | 8 +++++--- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/redkale/util/Copier.java b/src/main/java/org/redkale/util/Copier.java index 64c809055..8ac35a381 100644 --- a/src/main/java/org/redkale/util/Copier.java +++ b/src/main/java/org/redkale/util/Copier.java @@ -689,7 +689,7 @@ public interface Copier extends BiFunction { final String utilClassName = Utility.class.getName().replace('.', '/'); final String newDynName = "org/redkaledyn/copier/_Dyn" + Copier.class.getSimpleName() + "_" + options + "__" + srcClass.getName().replace('.', '_').replace('$', '_') - + "__" + destClass.getName().replace('.', '_').replace('$', '_') + + (srcClass == destClass ? "" : ("__" + destClass.getName().replace('.', '_').replace('$', '_'))) + (extendInfo.length() == 0 ? "" : Utility.md5Hex(extendInfo.toString())); try { Class clz = RedkaleClassLoader.findDynClass(newDynName.replace('/', '.')); diff --git a/src/main/java/org/redkale/util/Inners.java b/src/main/java/org/redkale/util/Inners.java index a68bfcfc8..135af98c4 100644 --- a/src/main/java/org/redkale/util/Inners.java +++ b/src/main/java/org/redkale/util/Inners.java @@ -41,6 +41,7 @@ class Inners { creatorCacheMap.put(HashMap.class, p -> new HashMap<>()); creatorCacheMap.put(HashSet.class, p -> new HashSet<>()); creatorCacheMap.put(LinkedHashSet.class, p -> new LinkedHashSet<>()); + creatorCacheMap.put(LinkedHashMap.class, p -> new LinkedHashMap<>()); creatorCacheMap.put(Stream.class, p -> new ArrayList<>().stream()); creatorCacheMap.put(ConcurrentHashMap.class, p -> new ConcurrentHashMap<>()); creatorCacheMap.put(CompletableFuture.class, p -> new CompletableFuture<>()); diff --git a/src/main/java/org/redkale/util/RedkaleClassLoader.java b/src/main/java/org/redkale/util/RedkaleClassLoader.java index 1a775cd17..2ec5e0a01 100644 --- a/src/main/java/org/redkale/util/RedkaleClassLoader.java +++ b/src/main/java/org/redkale/util/RedkaleClassLoader.java @@ -42,12 +42,14 @@ public class RedkaleClassLoader extends URLClassLoader { private static final String[] buildPackages = { "org.redkaledyn", //所有动态生成类的根package + "org.redkale.annotation", "org.redkale.asm", "org.redkale.boot", "org.redkale.boot.watch", "org.redkale.cluster", "org.redkale.convert", "org.redkale.convert.bson", "org.redkale.convert.ext", - "org.redkale.convert.json", "org.redkale.mq", - "org.redkale.net", "org.redkale.net.client", - "org.redkale.net.http", "org.redkale.net.sncp", + "org.redkale.convert.json", "org.redkale.convert.protobuf", + "org.redkale.mq", "org.redkale.net", + "org.redkale.net.client", "org.redkale.net.http", + "org.redkale.net.sncp", "org.redkale.persistence", "org.redkale.service", "org.redkale.source", "org.redkale.util", "org.redkale.watch" };