- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用反射从 ClassLoader 获取 defineClass
方法
ClassLoader cl = this.getClass().getClassLoader();
Method m = cl.getClass().getMethod("defineClass", new Class[] { String.class, Array.class, int.class, int.class });
但这失败并出现 NoSuchMethodException: sun.misc.Launcher$AppClassLoader.defineClass(java.lang.String, java.lang.reflect.Array, int, int)
它似乎不喜欢 Array.class
,但如果是这样,我不知道那里需要什么。
最佳答案
ClassLoader.defineClass
将 byte
数组作为其第二个参数,而不是 Array
类型的对象。这就是您所需要的:
Method m = ClassLoader.class.getDeclaredMethod("defineClass", String.class, byte[].class, int.class, int.class);
关于java - 使用反射从 ClassLoader 获取 defineClass 时出现 NoSuchMethodException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29663564/
我正在为我的自定义编程语言开发 REPL。它在编译器之上实现,用于为输入生成字节码并将其转换为 Class。使用 sun.misc.Unsafe.defineClass(String, byte[],
我正在使用 JVMTI 编写一个应用程序。我正在尝试检测字节码:通过在每个方法条目上注入(inject)方法调用。 我知道该怎么做,但问题出在仪器类中,假设它被称为 Proxy ,我使用 JNI 函数
我使用 ClassLoader 中的方法 defineClass() 从字节数组中定义一个类。我使用反射获取此方法: ClassLoader.class.getDeclaredMethod(
我正在使用自定义类加载器加载类。在大多数情况下,一切正常,但有时当我加载特别复杂的项目/库时,我会遇到一个奇怪的错误: Exception in thread "main" java.lang.Cla
我有一个类文件,我正在通过对 ClassLoader.defineClass 的反射调用从中读取字节并将其定义为 Class 对象。 我收到的 NoClassDefFoundError 消息是: Ca
我正在使用 jdk-10.0.2 和 gradle 4.7,在构建我的项目时出现此错误。 Unable to find method 'sun.misc.Unsafe.defineClass(
意图: 我正在使用 java.lang.instrument包来为 Java 程序创建一些工具。我的想法是,我通过这个系统使用字节码操作,以便在每个方法的开头和结尾添加方法调用。一般来说,修改后的 J
我正在尝试将带有 EJB 1.1 内容的旧代码库部署到 Weblogic 10.3.6 并不断收到这个奇怪的错误 Class bytes found but defineClass()failed f
我正在尝试使用反射从 ClassLoader 获取 defineClass 方法 ClassLoader cl = this.getClass().getClassLoader(); Method m
我正在使用以下方法从 jar 条目(仅包含类文件)中读取字节。 jar里面没有jar文件。 private List readFromJarFile(File cp) { List cbyte
我使用 ASM 生成了一个类,现在我尝试使用 ContextClassLoader 加载该类: (.defineClass classloader (str pkg "." classname) co
我正在使用 JNI 调用 DefineClass() 从 C 定义一个 java 类,然后我为类中的 native 方法注册 native 回调。该类有两个静态方法,都是 native 方法。我使用
我正在开发一个应用程序,我在自定义启动器中按以下方式直接将一些类注入(inject) JVM: 第 1 步:使用 LoadLibrary(C++ 代码)加载 jvm dll 第 2 步:实际注入(in
我尝试扩展类加载器。我的 ClassLoader.loadClass 是: protected synchronized Class loadClass(String name, boolean r
我已经使用 java 16 启动了一个项目,但我在项目中到处都遇到错误: An error has occurred. See error log for more details. Unable t
我正在尝试在 Appcelerator Hyperloop 中做最简单的事情来定义/创建我自己的类,但这导致我的构建失败(无法为模拟器或设备构建)并出现构建时错误控制台。 我刚刚开始一个新的空白 Al
我正在尝试使用 Spring MongoTemplate 将一些数据(对象列表)插入到 mongoDB 中,但出现异常: 14:08:04.430 [main] DEBUG org.springfra
我是一名优秀的程序员,十分优秀!