从sun.security。*包中替换类

时间:2015-02-19 09:42:09

标签: java security java-8 java-7

我正在尝试将应用程序从JDK7升级到JDK8,后者使用sun.security.*包中的以下类

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

这些类的使用会在除sun.security.pkcs.PKCS10之外的所有情况下生成警告,这会导致编译错误,因为此类不再存在。它似乎已移至另一个包sun.security.pkcs10.PKCS10

虽然我可以简单地更改此程序包名称并忽略其他sun.security类生成的警告,但我理解you're not supposed to use classes in sun.security packages。如何使用JDK8公共API中的等效类替换这些类?

1 个答案:

答案 0 :(得分:9)

JDK8公共API中没有任何等价物。您应该切换到BouncyCastle API