我有一个使用Java 6版本编译的第三方java软件包,该软件包部署在java 8环境中。现在我在运行时看到了跟随异常。
Exception in thread "AWT-EventQueue-2" java.lang.NoClassDefFoundError: sun/security/x509/CertAndKeyGen
at com.xxx.ws.security.impl.DefaultSecurityStore.generateSelfSignedEntry(Unknown Source)
at com.xxx.ws.security.impl.SecurityPluginUtil.sign(Unknown Source)
at com.xxx.ws.security.impl.ProcessingContext.processOutbound(Unknown Source)
at com.xxx.ws.security.impl.BaseSecurityEnvironment.secureOutboundMessage(Unknown Source)
at com.xxx.em.launch.message.LaunchRequestMessage.sendTo(Unknown Source)
我对此异常进行了研究,并发现Java 8将CertAndKeyGen
类移至sun.security.tools.keytool
包。
但在这种情况下,此包使用java 6编译并引用sun.security.x509.CertAndKeyGen
包。
什么是缓解此问题的替代方法。
。谢谢你的时间。