栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

NoSuchAlgorithmException:算法HmacSHA1不可用

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

NoSuchAlgorithmException:算法HmacSHA1不可用

启动脚本将设置

java.ext.dirs
为自己的目录集(特定于应用程序),但省略了驻留的“普通”扩展目录(
$JAVA_HOME/jre/lib/ext/
sunjce_provider.jar
。这说明了您的第一点(将Jar文件复制到lib目录中使其再次可见)。这很容易复制。

关于第二点,我认为这是由于启动脚本使用该

-Djava.security.policy
选项设置的策略文件。某些提供程序是否可用取决于策略文件。默认策略文件使SunJCE提供程序可用,但是由于启动脚本要求使用非默认的自定义策略文件,因此一切正常。我建议您看一下该策略文件。

例如,在我的系统(Ubuntu Linux,Ubuntu打包的Sun JVM
1.6.0_20)上,默认策略文件位于其中,

/etc/java-6-sun/security/java.security
并且(其中包括)以下几行:

security.provider.1=sun.security.provider.Sunsecurity.provider.2=sun.security.rsa.SunRsaSignsecurity.provider.3=com.sun.net.ssl.internal.ssl.Providersecurity.provider.4=com.sun.crypto.provider.SunJCEsecurity.provider.5=sun.security.jgss.SunProvidersecurity.provider.6=com.sun.security.sasl.Providersecurity.provider.7=org.jcp.xml.dsig.internal.dom.XMLDSigRIsecurity.provider.8=sun.security.smartcardio.SunPCSC

定义默认情况下应提供哪些提供程序。从您的症状来看,我认为除非明确注册,否则自定义策略文件将使SunJCE不可用(这是可以理解的,因为启动脚本还删除了对包含SunJCE的Jar文件的访问…)。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/497099.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号