仅在三个Eclipse实例之一中的Java安全性NoSuchAlgorithmException

时间:2012-09-07 13:18:29

标签: java eclipse security settings

最近遇到了问题

  

java.security.NoSuchAlgorithmException:算法HmacSHA1不可用

尝试使用这个简单的代码来隔离问题:

import java.security.NoSuchAlgorithmException;

import javax.crypto.Mac;

public class Main {
  public static void main(String... args) {

      final String HMAC_SHA1_ALGORITHM = "HmacSHA1";
      Mac instance;
      try {
          instance = Mac.getInstance(HMAC_SHA1_ALGORITHM);
      } catch (NoSuchAlgorithmException e) {
          final String errmsg = "NoSuchAlgorithmException: "
                  + HMAC_SHA1_ALGORITHM + " " + e;
          // ...
      }

  }
}

问题是,这在我的一个Eclipse实例中有效,而在另一个实例中无效。所有测试都使用New Java Project,粘贴以上内容并运行,因此应该是由于Eclipse实例之间的某些设置差异。

我试图浏览所有看似相关的设置(classpath,JRE,java编译器),但看起来不同或者如果改变它就会工作。 (如果有人知道如何“区分”两个日食的设置,请告诉!)

我只是使用第三个Eclipse(它工作的地方(到目前为止)),但要了解这个潜在的真正问题到底是什么仍然很有趣。

1 个答案:

答案 0 :(得分:0)

我使用Eclipse和tomcat进行了相同的Exception,我所做的是:

通过TOMCAT 8配置重新加载JDK,它开始工作