0

maven을 사용하는 독립형 응용 프로그램에서 작업 중입니다. 다음과 같은 시나리오를 시도했습니다 : 1. 서명 된 jar (bcprov-jdk16-1.46.jar)가 압축 해제되도록 maven shade 플러그인 을 사용하여 모든 종속성을 압축 해제합니다. 그래서 jar의 서명을 잃어 버렸습니다. 보안 예외가 발생하기 때문입니다. "jce는 제공자 BC를 인증 할 수 없습니다." 2. maven 어셈블리 플러그인 (assembly.xml 기반) 및 maven jar 플러그인 사용 (모든 jar 클래스 경로 설정) 여기서 lib 폴더로 모든 종속성을 이동하고 종속성없이 프로젝트 프로젝트를 만들었습니다. 그룹화 된 zip 파일. 이 논리 고정 보안 예외 문제 내 응용 프로그램이 잘 작동합니다. 하지만 여기서는 bcprov-jdk16-1.46.jar을 lib 폴더로 옮길 필요가 있습니다. 다른 jar 파일은 응용 프로그램 jar 자체에 있어야합니다.서명 된 jar 압축 해제를 기반으로하는 구조체 문제

는하지만 난 당신이 항아리에서 항아리를 가질 수 없습니다

zip 
| 
    -- MyProject.jar 
    | 
     -- unpacked dependancies (except signed dependancies) 
| 
    -- lib folder 
     | 
     -- signed jar (bcprov-jdk16-1.46.jar) 
+1

정확히 무엇이 당신의 질문입니까? – khmarbaise

+0

manifest 클래스 패스를 추가하여 jar 파일을 풀지 않고 jar 파일을 lib 폴더로 옮기고 해당 jar 파일에 액세스하려고합니다. – user3619723

답변

0

다음과 같은 구조를 할 필요가있다. jar-jar와 같은 해킹을 사용하지 않는 한. lib 폴더에 모든 종속성을 유지해야합니다. 훨씬 더 간단합니다.