2016-09-25 1 views
0

레일이있는 jruby를 사용하고 있습니다. 내 컴퓨터에 JDK7을 설치했습니다. 레일 서버를 시작하고 앱을 실행하려고 할 때마다 오류가 발생합니다. "Illegal key size: possibly you need to install Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files for your JRE"잘못된 키 크기 : JRE (Java Cryptography Extension) 무제한 강도 관할 정책 파일을 설치해야 할 수도 있습니다.

Google에서 검색 한 결과 JDK-7 보안 정책 파일을 다운로드해야합니다. 그래서이 파일을 here에서 다운로드하고이 파일들을 내 Java 디렉토리 경로 "C:\Program Files\Java\jdk1.7.0_79\jre\lib\security"에 넣습니다. 내 문제가 해결 될 거라 생각했지만 여전히 같은 오류가 발생합니다.

자바의 보안 폴더에 파일을 붙여 넣는 동안 나는 "you will need to provide administration permission to copy this folder"과 같은 정보를 가진 경고 상자를 받고 있습니다. 나는 경고 상자의 계속 버튼에 cliked하고 파일이 복사되었습니다.

나는 뭔가를 놓쳤을 것입니다.

답변

0

도와주세요 제가 설정/초기화/unlimited_strength_cryptography.rb에 만족 아래 하나 개의 파일을 생성하며

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 
근무
관련 문제