2012-12-11 2 views
0

jar 파일을 서블릿에 업로드하고 매니페스트를 읽으려고합니다. jarStream.getManifest()는 null을 리턴합니다.jarInputStream.getManifest() is null

JarInputStream jarInputStream = new JarInputStream (inputStream);

매니페스트 mf = jarInputStream.getManifest(); 이 업로드되면

I 절대 경로를 제공 JarFile를과 같이 동일한 항아리, I는 병의 매니페스트다면 ..

난 런타임 JAR 파일 ..의 매니페스트를 읽을 필요 ..

답변

1

ant 스크립트를 사용하여 jar 파일을 패키지화하면 manifest에 사용자 정의 속성을 제공하여 manifest를 성공적으로 얻을 수 있습니다.

이전에 나는 이클립스> export> java> java archive 을 사용하여 jar 파일을 패키징했다.이 manifest가 기본값 인 경우이 익스포트 된 jar의 매니페스트를 편집하면 문제의 원인 인 것으로 보였다.

@EJP와 @Burkhard에게 감사의 말을 전합니다.

+0

여기에 있습니다. 처음에는 간단히 zip과 사용자 정의 MANIFEST.MF를 사용했습니다. jar 파일을 만들고 ANT로 매니페스트를 작성한 다음 예상대로 작업했습니다. – jaw

0

당신이 자바 1.4를 사용하는

어떤 제안이 가장 감사합니다 ..? 이 부분을 보시려면 bug 4338238

+0

더 중요한 것은 색인 된 JAR 파일을 사용하고 있습니까? 버그는 '해결되지 않음'으로 표시되어 Java 버전이 제공되지 않습니다. – EJP

+0

이클립스 주노를 사용하여 프로젝트에 jar 파일을 내보냈습니다. 64 비트 Windows 컴퓨터에서 jdk1.6.30을 사용하고 있습니다 .. @EJP 인덱스 된 JAR 생성을위한 구성을 명시 적으로 선택하지 않았습니다. –