在Grails 2.5.0中找不到BouncyCastleProvider类
我有一个Grails项目,我想在其中使用Bouncycastle计算字符串的Sha512散列 当我调用在Grails 2.5.0中找不到BouncyCastleProvider类,grails,classloader,bouncycastle,Grails,Classloader,Bouncycastle,我有一个Grails项目,我想在其中使用Bouncycastle计算字符串的Sha512散列 当我调用Security.addProvider(new BouncyCastleProvider())时,我收到以下错误消息: | Error 2015-06-21 15:34:53,242 [localhost-startStop-1] ERROR context.GrailsContextLoaderListener - Error initializing the application: o
Security.addProvider(new BouncyCastleProvider())
时,我收到以下错误消息:
| Error 2015-06-21 15:34:53,242 [localhost-startStop-1] ERROR context.GrailsContextLoaderListener - Error initializing the application: org/bouncycastle/jce/provider/BouncyCastleProvider
Message: org/bouncycastle/jce/provider/BouncyCastleProvider
Line | Method
->> 49 | doCall in BootStrap$_closure1
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| 327 | evaluateEnvironmentSpecificBlock in grails.util.Environment
| 320 | executeForEnvironment . . . . . in ''
| 296 | executeForCurrentEnvironment in ''
| 262 | run . . . . . . . . . . . . . . in java.util.concurrent.FutureTask
| 1145 | runWorker in java.util.concurrent.ThreadPoolExecutor
| 615 | run . . . . . . . . . . . . . . in java.util.concurrent.ThreadPoolExecutor$Worker
^ 745 | run in java.lang.Thread
Caused by ClassNotFoundException: org.bouncycastle.jce.provider.BouncyCastleProvider
->> 366 | run in java.net.URLClassLoader$1
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| 355 | run in ''
| 354 | findClass . . . . . . . . . . . in java.net.URLClassLoader
| 425 | loadClass in java.lang.ClassLoader
| 49 | doCall . . . . . . . . . . . . . in BootStrap$_closure1
| 327 | evaluateEnvironmentSpecificBlock in grails.util.Environment
| 320 | executeForEnvironment . . . . . in ''
| 296 | executeForCurrentEnvironment in ''
| 262 | run . . . . . . . . . . . . . . in java.util.concurrent.FutureTask
| 1145 | runWorker in java.util.concurrent.ThreadPoolExecutor
| 615 | run . . . . . . . . . . . . . . in java.util.concurrent.ThreadPoolExecutor$Worker
^ 745 | run in java.lang.Thread
在我的IDE(IntelliJ)中,导入import org.bouncycastle.jce.provider.BouncyCastleProvider
似乎已解析,我可以导航到类的位置
为什么在执行应用程序时找不到
BouncyCastle
类 您是否在正在使用的JRE的JCE安全策略文件中添加了提供程序的条目
JAVA_HOME\jre\lib\security\java.security
n比已存在的最后一个条目多一个
您是否在正在使用的JRE的JCE安全策略文件中添加了提供程序的条目
JAVA_HOME\jre\lib\security\java.security
n比已存在的最后一个条目多一个
好的,我刚刚意识到我可以计算散列,而无需添加BouncyCastle作为SecurityProvider…但是,我仍然不明白,为什么我不能加载Grails发行版中包含的类…好的,我刚刚意识到我可以计算散列,而无需添加BouncyCastle作为SecurityProvider…但是,我仍然不明白,为什么我不能加载一个包含在Grails发行版中的类。。。