从 .zip 文件加载类时出现 java.lang.LinkageError

标签 java

我正在尝试创建一个类加载器,它将加载 .zip 文件中的 .class 文件。我按照本教程( https://weblogs.java.net/blog/2008/07/25/how-load-classes-jar-or-zip )进行操作,但是当我运行该程序时,出现此错误:

java.lang.LinkageError: loader (instance of org/freeforums/geforce/genforcer/main/ZipClassLoader): attempted duplicate class definition for name: "test/TestClass"

错误来自第30行,即:

return defineClass(filename, out.toByteArray, 0, out.size());

我使用以下方式调用该方法:

zipClassLoaderObj.findClass("test.TestClass");

有人知道我做错了什么吗?

最佳答案

发现问题了。我调用该方法两次,因为它与一堆其他代码处于“for”循环中。刚刚将其从循环中取出,现在它可以正常工作了。不知道为什么我自己无法弄清楚。感谢您的帮助!

关于从 .zip 文件加载类时出现 java.lang.LinkageError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22077680/

相关文章:

java - mysql cpanel netbeans 远程连接

java - 推送通知 getBroadcast

java - 实例变量默认值

javafx 绑定(bind) : Text bind to two properties

java - Apache Camel AWS S3 : credential expiration and temporary credentials

java - 从数据库获取字符串后如何在BIRT中将其转换为整数?

java - 服务层中的验证(Spring Boot)

java - 带有 ListActivity 的 Material 设计工具栏

java - JDK 10 无法在 Eclipse 中导入 javax.xml.namespace

java - JPanel TitledBorder 中的标题截断 - Java swing