9

java.lang.VerifyError 例外に関する簡単な質問です。次のようなエラーが発生したとします。

Java call terminated by uncaught Java exception: java.lang.VerifyError:(class: com/.../MyClassName, method: <init> signature: (Ljava/io/Reader;)V) Incompatible argument to function

「init」と「(Ljava/io/Reader;)V)」の部分が何に関係するのかを理解するのを手伝ってもらえますか? 私にはメソッド名やシグニチャのようには見えませんが、Java にはあまり詳しくありません。ありがとう!

4

3 に答える 3

7

このエラーは、コードのどこかで<init>、間違った引数セットを渡してコンストラクター (メソッド) を呼び出そうとしたことを意味します。予期された引数はReaderオブジェクトでした。

これはおそらく、以前にクラス ファイルをコンパイルした後、クラス ファイルを再コンパイルせずに何らかの方法でクラス定義を変更したことを意味します。したがって、コードは存在しない関数を呼び出そうとします。コードを再コンパイルして、問題が解決するかどうかを確認してください。

お役に立てれば!

于 2012-06-14T19:43:39.417 に答える
3

アプリケーション サーバーでアプリケーションを実行している場合は、クラスの読み込みに問題がある可能性があります。

ライブラリに対してコードをコンパイルしましたが、コードを実行しようとすると、別の (古い?) バージョンのライブラリに対して実行されています。

古いライブラリには、おそらくそのメソッドまたはコンストラクターがありません。

于 2012-06-14T19:55:34.730 に答える