首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >密钥大小非法:您可能需要为您的JRE安装Java加密扩展(JCE)无限制强度权限策略文件

密钥大小非法:您可能需要为您的JRE安装Java加密扩展(JCE)无限制强度权限策略文件
EN

Stack Overflow用户
提问于 2016-09-25 19:46:39
回答 1查看 327关注 0票数 1

我正在使用带有rails的jruby。我已经在我的机器上安装了JDK7。每当我启动我的rails服务器并尝试运行我的应用程序时,我得到的错误是"Illegal key size: possibly you need to install Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files for your JRE"

我在google上搜索,发现我必须下载JDK-7安全策略文件。因此,我从here下载了这些文件,并将它们放入我的java目录路径"C:\Program Files\Java\jdk1.7.0_79\jre\lib\security"中。我认为这将解决我的问题,但我仍然得到相同的错误。

在java的安全文件夹中粘贴文件时,我会收到一个警告框,其中的信息为"you will need to provide administration permission to copy this folder"。我点击了警告框的继续按钮,文件被复制了。

我一定漏掉了什么。

请帮帮忙

EN

回答 1

Stack Overflow用户

发布于 2016-09-26 01:11:41

我用下面的内容创建了一个文件config/initializers/unlimited_strength_cryptography.rb,它工作了

代码语言:javascript
复制
if RUBY_PLATFORM == 'java' # Allows the application to work with other Rubies if not JRuby
  require 'java'
  java_import 'java.lang.ClassNotFoundException'

  begin
    security_class = java.lang.Class.for_name('javax.crypto.JceSecurity')
    restricted_field = security_class.get_declared_field('isRestricted')
    restricted_field.accessible = true
    restricted_field.set nil, false
  rescue ClassNotFoundException => e
    # Handle Mac Java, etc not having this configuration setting
    $stderr.print "Java told me: #{e}n"
  end
end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39686447

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档