Od kilku dni walczę z tym w głowę i jestem kompletnie zakłopotany. Oto wybiegiem:jarsigner -verify działa w Javie 6, ale nie w Javie 7
- Mam projektu plugin Eclipse przy użyciu Tycho budować poprzez Maven 3
- ciągu Maven Mam maven-jarsigner-plugin skonfigurować do podpisania słoików używając mojego kluczy (patrz szczegóły poniżej kluczy)
- mam podpisywanie kodu cert, który został podpisany przez Thawte w moim kluczy
mogę podejmować żadnych podpisany plik jar z docelowej/* i uruchom „jarsigner -verify” na nim . To, co się dzieje:
#java 6 on a VM
[email protected]:/vagrant/com.example.plugins.eclipse/target$ jarsigner -verify com.example.eclipse-0.1.3-SNAPSHOT.jar
jar verified.
Następny:
#java 7 on a completely different vm
[email protected]:/vagrant$ jarsigner -verify com.example.eclipse-0.1.3-SNAPSHOT.jar
jar verified.
Warning:
This jar contains entries whose certificate chain is not validated.
Re-run with the -verbose and -certs options for more details.
mam uważać, aby nie używać maszyny z zainstalowanym zarówno java6 i Java7, więc nie jest to this issue
ja również don” t wierzę, że jest oparty na algorytmie, jak to opisano w this issue, ponieważ mogę podpisać projekt przy użyciu Javy 6 lub Java 7 i zawsze zawsze sprawdza w Javie6 i weryfikuje w języku Java6 i nigdy sprawdza w Javie7, niezależnie od tego, z jakim środowiskiem podpisałem słoiki.
Oto wyjście keytool -list
Keystore type: JKS
Keystore provider: SUN
Your keystore contains 3 entries
root, Aug 11, 2013, trustedCertEntry,
Certificate fingerprint (SHA1): 91:C6:D6:EE:3E:8A:C8:63:84:E5:48:C2:99:29:5C:75:6C:81:7B:81
intermediate, Aug 11, 2013, trustedCertEntry,
Muszę wierzyć, że jest to kwestia Łańcuch certyfikatów, bo jestem w stanie zweryfikować słoik za pomocą następującego polecenia w języku Java 7:
jarsigner -verify -keystore keystore com.example.eclipse-0.1.3-SNAPSHOT.jar
Oczywiście nie mogę mieć każdego użytkownika mojej wtyczki za pomocą mojego pliku magazynu kluczy, więc to nie jest rozwiązanie. Jednak wzmacnia to, że mam problem z łańcuchem certyfikatów w języku Java 7. Myśli?
Czy można ponownie uruchomić przy użyciu opcji -verbose i -certs i opublikować dane wyjściowe? – sErVerdevIL