升级Java后找不到Sun.security [英] Sun.security cannot be found after upgrading Java

查看:1748
本文介绍了升级Java后找不到Sun.security的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个用Play 2.0创建的应用程序.我实现了scribe-java库以使用某些OAuth服务.直到今天,一切都还不错,但是当我升级jdk并重新启动服务器时,我无法使用scribe-java库.似乎它在sun.security软件包中使用了sun/security/pkcs11/P11Keysun/security/pkcs11/Length之类的类,但找不到它.

I have an application created with Play 2.0. I implemented scribe-java library to use some OAuth services. Until today everything was fine but when I upgrade jdk and reboot the server I couldn't use scribe-java library. It seems it uses some classes like sun/security/pkcs11/P11Key and sun/security/pkcs11/Length in sun.security package but couldn't find it.

"java -version"返回以下内容:

"java -version" returns this:

java版本"1.7.0_03"

java version "1.7.0_03"

OpenJDK运行时环境(IcedTea7 2.1.1pre)(7〜u3-2.1.1〜pre1-1ubuntu3)

OpenJDK Runtime Environment (IcedTea7 2.1.1pre) (7~u3-2.1.1~pre1-1ubuntu3)

OpenJDK 64位服务器VM(内部版本22.0-b10,混合模式)

OpenJDK 64-Bit Server VM (build 22.0-b10, mixed mode)

播放2.0 stacktrace:

Play 2.0 stacktrace:

! @6bk5o8md2 - Internal server error, for request [GET /user/service/google/oauth_callback/?code=[SECRET]] ->

play.core.ActionInvoker$$anonfun$receive$1$$anon$1: Execution exception [[NoClassDefFoundError: sun/security/pkcs11/P11Key]]
        at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:134) [play_2.9.1.jar:2.0.2]
        at play.core.ActionInvoker$$anonfun$receive$1.apply(Invoker.scala:115) [play_2.9.1.jar:2.0.2]
        at akka.actor.Actor$class.apply(Actor.scala:318) [akka-actor.jar:2.0.2]
        at play.core.ActionInvoker.apply(Invoker.scala:113) [play_2.9.1.jar:2.0.2]
        at akka.actor.ActorCell.invoke(ActorCell.scala:626) [akka-actor.jar:2.0.2]
        at akka.dispatch.Mailbox.processMailbox(Mailbox.scala:197) [akka-actor.jar:2.0.2]
Caused by: java.lang.NoClassDefFoundError: sun/security/pkcs11/P11Key
        at sun.security.pkcs11.P11ECKeyFactory.generatePublic(P11ECKeyFactory.java:234) ~[sunpkcs11.jar:na]
        at sun.security.pkcs11.P11ECKeyFactory.implTranslatePublicKey(P11ECKeyFactory.java:103) ~[sunpkcs11.jar:na]
        at sun.security.pkcs11.P11ECKeyFactory.engineGeneratePublic(P11ECKeyFactory.java:152) ~[sunpkcs11.jar:na]
        at java.security.KeyFactory.generatePublic(KeyFactory.java:334) ~[na:1.7.0_03]
        at sun.security.x509.X509Key.buildX509Key(X509Key.java:223) ~[na:1.7.0_03]
        at sun.security.x509.X509Key.parse(X509Key.java:170) ~[na:1.7.0_03]

推荐答案

又一次更新&&升级,jdk从2.1.1pre升级到2.3.2,并解决了问题.发生的事情是甲骨文浪费了我两个小时,真糟. :(

After another update && upgrade, jdk upgraded from 2.1.1pre to 2.3.2 and the problem fixed. What happened is that Oracle wasted my 2 hours, sucks. :(

这篇关于升级Java后找不到Sun.security的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆