>Java >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

이 문제를 해결하려면 근본 원인을 이해해야 합니다. 이 오류는 일반적으로 JVM(Java Virtual Machine)에서 유효하지 않거나 인식되지 않는 서명 파일이 JAR 파일에 포함된 경우에 발생합니다.

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.