Somewhere in my code, I do this:
在我的代码中,我这样做:
(proxy [JComboBox IDeref] []
(deref [] (.getSelectedItem this)))
While on my machine this works fine, some users reported the following problem:
在我的机器上,这个功能很好,一些用户报告了以下问题:
java.lang.VerifyError: class ggo.igs.gui.widgets.proxy$javax.swing.JComboBox$IDeref$db53459f
overrides final method 1®+1ú h.1®ˆû1ú h
at java.lang.ClassLoader.defineClass1 (ClassLoader.java:-2)
java.lang.ClassLoader.defineClass (ClassLoader.java:676)
java.security.SecureClassLoader.defineClass (SecureClassLoader.java:124)
java.net.URLClassLoader.defineClass (URLClassLoader.java:260)
java.net.URLClassLoader.access$100 (URLClassLoader.java:56)
java.net.URLClassLoader$1.run (URLClassLoader.java:195)
java.security.AccessController.doPrivileged (AccessController.java:-2)
java.net.URLClassLoader.findClass (URLClassLoader.java:188)
com.sun.jnlp.JNLPClassLoader.findClass (JNLPClassLoader.java:332)
java.lang.ClassLoader.loadClass (ClassLoader.java:317)
java.lang.ClassLoader.loadClass (ClassLoader.java:252)
java.lang.ClassLoader.loadClassInternal (ClassLoader.java:375)
ggo.igs.gui.widgets$combo_box.doInvoke (widgets.clj:124)
clojure.lang.RestFn.invoke (RestFn.java:440)
I don't see where I might override a final method, especially not with this weird "name". Any ideas what might be wrong?
我不知道在哪里可以覆盖最终方法,特别是用这个奇怪的“名称”。有什么想法吗?
1 个解决方案
#1
1
I would start with checking the JDK version on both environments (yours and your users): java.lang.VerifyError can be the result when you have compiled against a different library than you are using at runtime.
我将首先检查JDK版本在两个环境(您和您的用户):java.lang。VerifyError是针对运行时使用的不同库编译的结果。
#1
1
I would start with checking the JDK version on both environments (yours and your users): java.lang.VerifyError can be the result when you have compiled against a different library than you are using at runtime.
我将首先检查JDK版本在两个环境(您和您的用户):java.lang。VerifyError是针对运行时使用的不同库编译的结果。