JCE cannot authenticate the provider BC
java.lang.SecurityException: JCE cannot authenticate the provider BC
着东西简直就是噩梦!
本来就是想简简单单的打个 jar 包,并将使用的第三方依赖 jar 包打进去,但是问题就出现在了项目中依赖的第三方 jar 包( bcprov-jdk15on-1.54.jar )存在签名,那在打包过程中会把 签名 破坏掉,导致在使用打好的jar包时报错: JCE cannot authenticate the provider BC 。
注意:如果依赖的第三方jar包不存在签名的话,直接按照下面的 打包方式 就能成功打包;
以下 为网上 解决方案(我照做没解决了.....)
老版本地址 :re/lib/security/java.security
新版本地址:java/conf/security/java.security
security.provider.x=org.bouncycastle.jce.provider.BouncyCastleProvider //这里的x,视具体情况而定,你可能是是10,11...
security.provider.1=SUN security.provider.2=SunRsaSign security.provider.3=SunEC security.provider.4=SunJSSE security.provider.5=SunJCE security.provider.6=SunJGSS security.provider.7=SunSASL security.provider.8=XMLDSig security.provider.9=SunPCSC security.provider.10=JdkLDAP security.provider.11=JdkSASL security.provider.12=SunMSCAPI security.provider.13=SunPKCS11 security.provider.14=org.bouncycastle.jce.provider.BouncyCastleProvider
将工程里面的“bcprov-jdk13-146.jar”,拷贝到/usr/java/jdk1.6.0_45/jre/lib/ext 路径下