2015-02-19 6 views
10

Ich versuche, eine App JDK7 zu JDK8 zu aktualisieren, dieKlassen von sun.security ersetzen. * Pakete

sun.security.x509.X509CertImpl 
sun.security.pkcs11.SunPKCS11 
sun.security.util.DerOutputStream 
sun.security.util.DerValue 
sun.security.util.ObjectIdentifier 
sun.security.pkcs.PKCS10 
sun.security.x509.X500Name 
sun.security.pkcs11.SunPKCS11 
sun.security.pkcs11.wrapper.CK_TOKEN_INFO 
sun.security.pkcs.PKCS10 

Die Verwendung dieser Klassen die folgenden Klassen aus den sun.security.* Pakete verwendet generiert Warnungen in allen Fällen außer sun.security.pkcs.PKCS10, was einen Kompilierungsfehler verursacht, weil diese Klasse nicht mehr existiert. Es scheint, dass es in ein anderes Paket sun.security.pkcs10.PKCS10 verschoben wurde.

Während ich einfach diesen Paketnamen ändern und die Warnungen von den anderen sun.security Klassen generiert ignorieren konnte, verstehe ich, dass you're not supposed to use classes in sun.security packages. Wie gehe ich vor, diese Klassen durch ihre Entsprechungen aus der öffentlichen JDK8-API zu ersetzen?

Antwort

7

Es gibt keine Entsprechungen in der öffentlichen API von JDK8. Sie sollten stattdessen zum BouncyCastle API wechseln.