va.security.NoSuchProviderException: no such provider: BC 的问题解决

在工程内引入bcprov-ext-jdk16-1.46.jar包;
在加密类的静态块中加入下面代码

static{  
  try{  
   Security.addProvider(new BouncyCastleProvider());  
  }catch(Exception e){  
   e.printStackTrace();  
  }  
 }  

己住一定要在 静态块中加入,否则不会起效果。

还有一种方式直接修改jre环境下的security配置文件
找到JAVA_HOME/jre/lib/security/java.security文件,在里面可以看到有几行是以“security.provider.”开头的,在它的最后序号之上加一行,如我的最后的序号是10,加入以下这行:
security.provider.10=org.bouncycastle.jce.provider.BouncyCastleProvider

猜你喜欢

转载自blog.csdn.net/zhenghuangyu/article/details/89014421