어떤 문제가 있는지 확인할 수 없습니다. 당신의 환경에서 무엇이 다른지 살펴보고 볼 수 있습니까? Windows 7 RC에서 실행 중입니다.
C:\temp>jar -cfv test-source.jar com/*
added manifest
adding: com/rdc/(in = 0) (out= 0)(stored 0%)
adding: com/rdc/test/(in = 0) (out= 0)(stored 0%)
adding: com/rdc/test/logging.properties(in = 13) (out= 15)(deflated -15%)
이의이 항아리에 서명하자
C:\temp>dir /s /b com
C:\temp\com\rdc
C:\temp\com\rdc\test
C:\temp\com\rdc\test\logging.properties
이의이 항아리를 만들어 보자 :
C:\temp>java -version
java version "1.5.0_14"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_14-b03)
Java HotSpot(TM) Client VM (build 1.5.0_14-b03, mixed mode, sharing)
이의 우리의 항아리에있을거야 무엇을 보자 :
의이 버전을 확인하자 : 자체 서명 인증서를 사용하고 있습니다.
C:\temp>jar tvf test-dest.jar
155 Wed Jul 15 23:39:12 BST 2009 META-INF/MANIFEST.MF
276 Wed Jul 15 23:39:12 BST 2009 META-INF/VINAY.SF
1130 Wed Jul 15 23:39:12 BST 2009 META-INF/VINAY.DSA
0 Wed Jul 15 23:37:18 BST 2009 META-INF/
0 Wed Jul 15 19:44:44 BST 2009 com/rdc/
0 Wed Jul 15 19:44:58 BST 2009 com/rdc/test/
13 Wed Jul 15 23:37:10 BST 2009 com/rdc/test/logging.properties
OK, 확실히 체결 된 것으로 나타납니다, 그것은 어떤 클래스가 없습니다 :
C:\temp>jarsigner -signedjar test-dest.jar test-source.jar vinay
Enter Passphrase for keystore:
Warning: The signer certificate will expire within six months.
은의 우리의 서명 항아리에 무엇을 보자. 모든이 나타납니다 그것의 얼굴에
C:\temp>jarsigner -verify -verbose test-dest.jar
155 Wed Jul 15 23:51:34 BST 2009 META-INF/MANIFEST.MF
276 Wed Jul 15 23:51:34 BST 2009 META-INF/VINAY.SF
1131 Wed Jul 15 23:51:34 BST 2009 META-INF/VINAY.DSA
0 Wed Jul 15 23:37:18 BST 2009 META-INF/
0 Wed Jul 15 19:44:44 BST 2009 com/rdc/
0 Wed Jul 15 19:44:58 BST 2009 com/rdc/test/
smk 13 Wed Jul 15 23:37:10 BST 2009 com/rdc/test/logging.properties
s = signature was verified
m = entry is listed in manifest
k = at least one certificate was found in keystore
i = at least one certificate was found in identity scope
jar verified.
Warning: This jar contains entries whose signer certificate will expire within
six months. Re-run with the -verbose and -certs options for more details.
:의이 항아리를 확인하자, 이제
Signature-Version: 1.0
Created-By: 1.5.0_14 (Sun Microsystems Inc.)
SHA1-Digest-Manifest-Main-Attributes: 4bEkze9MHmgfBoY+fnoS1V9bRPs=
SHA1-Digest-Manifest: YB8QKIAQPjEYh8PkuGA5G8pW3tw=
Name: com/rdc/test/logging.properties
SHA1-Digest: qXCyrUvUALII7SBNEq4R7G8lVQQ=
:
Manifest-Version: 1.0
Created-By: 1.5.0_14 (Sun Microsystems Inc.)
Name: com/rdc/test/logging.properties
SHA1-Digest: Ob/S+a7TLh+akYGEFIDugM12S88=
그리고 VINAY.SF
의 내용 :의는 MANIFEST.MF
의 내용을 살펴 보자 순서대로. 인증서가 만료되었거나 철회되었는지 확인할 수 있습니까? 자체 서명 된 인증서 또는 실제 인증서를 사용하고 있습니까? 아니면 당신의 문제가 오해 한 것입니까?
서명 된 jar 파일을 만드는 데 사용하는 명령을 표시 할 수 있습니까? – notnoop