From 59dd38308475a1b7ea8aea75eb4d6f8957eb2829 Mon Sep 17 00:00:00 2001 From: hengyunabc Date: Sun, 27 Sep 2020 19:07:52 +0800 Subject: [PATCH] avoid retransform lambda class. #1512 --- .../src/main/java/com/taobao/arthas/core/advisor/Enhancer.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/com/taobao/arthas/core/advisor/Enhancer.java b/core/src/main/java/com/taobao/arthas/core/advisor/Enhancer.java index cfe76d1af..6704ebf27 100644 --- a/core/src/main/java/com/taobao/arthas/core/advisor/Enhancer.java +++ b/core/src/main/java/com/taobao/arthas/core/advisor/Enhancer.java @@ -54,6 +54,7 @@ import com.taobao.arthas.core.advisor.SpyInterceptors.SpyTraceInterceptor2; import com.taobao.arthas.core.advisor.SpyInterceptors.SpyTraceInterceptor3; import com.taobao.arthas.core.server.ArthasBootstrap; import com.taobao.arthas.core.util.ArthasCheckUtils; +import com.taobao.arthas.core.util.ClassUtils; import com.taobao.arthas.core.util.FileUtils; import com.taobao.arthas.core.util.SearchUtils; import com.taobao.arthas.core.util.affect.EnhancerAffect; @@ -331,7 +332,7 @@ public class Enhancer implements ClassFileTransformer { */ private static boolean isUnsupportedClass(Class clazz) { return clazz.isArray() || (clazz.isInterface() && !GlobalOptions.isSupportDefaultMethod) || clazz.isEnum() - || clazz.equals(Class.class) || clazz.equals(Integer.class) || clazz.equals(Method.class); + || clazz.equals(Class.class) || clazz.equals(Integer.class) || clazz.equals(Method.class) || ClassUtils.isLambdaClass(clazz); } /**