【发布时间】:2011-12-06 20:47:07
【问题描述】:
我想编写一个类加载器,它可以帮助我在运行时实现自定义类并最终实现整个组件。现在我正在加载课程。
我正在尝试加载这个 role.java 文件。但是,当我到达这部分代码时:
myClass = super.defineClass(className, classData, 0, classData.length);
我得到了这个例外:
线程 "main" java.lang.ClassFormatError 中的异常:类文件 C:\Users\ARIFAH\Downloads\Compressed\eUML2 免费版\带有类加载器代码\2\ 中的魔法值不兼容 1885430635 archetypedComponentWithNull\src\aC\Role/java
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at customCL.customClassLoader.loadClass(customClassLoader.java:116)
at java.lang.ClassLoader.loadClass(Unknown Source)
at customCL.customClassLoader.main(customClassLoader.java:145)
我读过帖子说“你需要像 OSGi 这样的东西”。这类似于从头开始做一些新的事情,我想避免这种情况。
为什么会出现这个错误?
【问题讨论】:
标签: java runtime-error classloader custom-attributes custom-component