ホームページ >Java >&#&チュートリアル >JAR ファイルで「java.lang.SecurityException: 無効な署名ファイル ダイジェスト」エラーがスローされるのはなぜですか?Maven Shade プラグインを使用して修正するにはどうすればよいですか?

JAR ファイルで「java.lang.SecurityException: 無効な署名ファイル ダイジェスト」エラーがスローされるのはなぜですか?Maven Shade プラグインを使用して修正するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-03 12:12:41996ブラウズ

Why Does My JAR File Throw a

JAR 実行時の「無効な署名ファイル」エラーについて

bouncy Castle などの外部ライブラリを利用する JAR ファイルを実行すると、次のような問題が発生する場合があります。エラー:

Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes

この問題を解決するには、ルートを理解する必要があります 原因。このエラーは通常、JAR ファイルに無効な署名ファイルが含まれている場合、または Java 仮想マシン (JVM) によって認識されない場合に発生します。

Maven-Shade-Plugin ユーザー向けの解決策

maven-shade-plugin を使用してシェーディングされた uber-JAR を作成しようとしている場合、解決策にはパッケージから特定の署名ファイルを除外することが含まれます プロセス。これを実現するには、POM.xml ファイル内のプラグイン設定に次の行を追加します。

<filters>
    <filter>
        <artifact>*:*</artifact>
        <excludes>
            <exclude>META-INF/*.SF</exclude>
            <exclude>META-INF/*.DSA</exclude>
            <exclude>META-INF/*.RSA</exclude>
        </excludes>
    </filter>
</filters>

これらの特定の署名ファイルを除外することで、JVM が検証中にそれらを無視できるようになり、無効な署名ファイルが解決されます。署名エラー。

以上がJAR ファイルで「java.lang.SecurityException: 無効な署名ファイル ダイジェスト」エラーがスローされるのはなぜですか?Maven Shade プラグインを使用して修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。