2012-06-21 111 views
2

我想使用Bouncy Castle作为Maven项目中的安全提供程序。它似乎在代码库中的某些地方运行良好,并且对于某些人来说在任何地方都可以工作得很好。但是,如果我尝试类似:为什么我得到这个NoSuchProviderException

public class Foo { 
    public static void main(String[] args) throws Exception { 
     Signature signature = Signature.getInstance("SHA256withRSA", "BC"); 
    } 
} 

然后我得到NoSuchProviderException异常。

在POM我有充气城堡作为一个依赖作为

<dependency> 
      <groupId>bouncycastle</groupId> 
      <artifactId>bcprov-jdk16</artifactId> 
      <version>140</version> 
      <scope>compile</scope> 
</dependency> 

我有几个不同的JDK经得起都给予同样的错误。

回答

4

作为answeredthis related如此问题,添加以下行应解决您的问题。

Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider()); 
+0

解决了这个问题,但是你是否知道为什么它可能适用于某些人而不适用于我,即使他们没有这个界限? – nomel7