19

このエラーはどういう意味ですか..Eclipseでは正常に動作しますが、intellijのアイデアでは動作しません

Exception in thread "main" java.lang.VerifyError: Cannot inherit from final class
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at com.couchbase.client.ViewConnection.createConnections(ViewConnection.java:120)
at com.couchbase.client.ViewConnection.<init>(ViewConnection.java:100)
at com.couchbase.client.CouchbaseConnectionFactory.createViewConnection(CouchbaseConnectionFactory.java:179)
at com.couchbase.client.CouchbaseClient.<init>(CouchbaseClient.java:243)
at com.couchbase.client.CouchbaseClient.<init>(CouchbaseClient.java:175)
at com.couchbase.App.putincbase(App.java:122)
at examplesCons.TestCons.run(TestCons.java:89)
at examplesCons.TestCons.main(TestCons.java:121)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)

Intellij IDeaのcouchbase-client-1.1.6.jarを使用してcouchbaseを実行しようとすると、このエラーが発生します。

4

3 に答える 3

12

メッセージは、それが言うことを意味します。

どこかで、どういうわけか、スーパークラスが として宣言されているスーパークラスを拡張するクラスを作成することができましたfinal

最も可能性の高い原因は、ビルド クラスパスと起動クラスパスの間に競合があることです。つまり、 ではないバージョンのスーパークラスに対してサブクラスをコンパイルし、 であるバージョンfinalに対して実行していfinalます。検証者は、これは間違っていると (正しく) 言っています。


これを引き起こしているのがビルドまたはクラスの 1 つでない場合は、使用している CouchDB クライアント クラス内の内部競合です。実際、これが aVerifyErrorではなくa であるという事実は、これがIncompatibleClassChangeError動的に生成された一部のバイトコードに問題がある可能性があることを示唆しています。

于 2013-08-09T00:07:43.867 に答える