• 締切済み

oracle java1.7でsignerエラー

以下のエラーが出てJavaプログラムが実行できません signer information does not match signer information of other classes in the same package ネットで調べたところ、Jarファイルを無署名にせよとか、Jarの順序を変えれば治ったとか 書いてありますが、具体的な原因について言及しているサイトは見当たりませんでした。 このエラーは具体的にどのような場合に発生するのでしょうか?

みんなの回答

noname#247307
noname#247307
回答No.1

署名付Jarを利用している中で署名の合わないクラスが同一パッケージに混じってるぞ、ということのようです。だいたいライブラリというのはパッケージ単位でまとめてあるわけで署名付きJaraならば、あるパッケージに属するクラスはすべて同じ署名なわけです。そこに署名の異なるクラスが混じってるとこういうエラーになります。 原因としてはいろいろ考えられますが、まぁたいていはライブラリの競合でしょう。例えばバージョンの関係で適合しないライブラリが混じってるとか、同じライブラリの中で古いバージョンのJarが混じっているとか、そういったことが原因であることが多いと思います。 これ以上は、どういうプログラムでどういうライブラリ構成かわからないのでなんともいいようがありません。そのエラーの前に、SecurityException: class ○○とか出力されてませんか? それが含まれているライブラリのバージョンなどから調べていくと良いように思います。

関連するQ&A