1

我使用以下代码来测试 BouncyCastle 加密库:

import java.security.Security;

public class SimpleTest {

    public static void main(String[] args)
    {
        String providerName="BC";

        if (Security.getProvider(providerName)==null)
        {
            System.out.println(providerName + "provider not installed");
        }
        else
        {
            System.out.println(providerName + "is installed");
        }
    }
}

但是,Eclipse 显示“BCprovider 未安装”,而我的 EditPlus 显示“BC 已安装”。

是什么造成了这种差异?

4

3 回答 3

0

在您的 Eclipse 中某处缺少一个库,它无法找到它。您需要在 Eclipse 中修改您的配置。

于 2012-09-21T17:55:13.797 回答
0

区别?我猜不同的java运行时可能有不同的错误信息。

恕我直言,除非您检查底层 JRE 是否相同,否则区别不在 Eclipse 和 texteditor 之间,而是在 Java SE 7u7 和 Java SE 6u35 之间(例如)。

无论如何,这不是您的实际问题,而是在您的类路径中有效地部署提供程序 jar 并注册它。

于 2012-09-21T18:56:14.547 回答
0

实际上,差异可能在于 Java中的静态安全提供程序配置。您需要以某种方式注册提供者才能使用它们。如果您无法更改 Java 运行时,则可以在它们已正确签名的情况下动态注册它们

于 2012-12-02T18:28:55.570 回答