JRuby 1.6을 Ruby 1.9로 기본 설정하는 방법은 무엇입니까?


79

JRuby를 기본적으로 1.9 모드로 실행하는 가장 좋은 방법은 무엇입니까?

즉, rake test대신 실행하고 싶습니다.jruby --1.9 -S rake test

감사합니다

답변:


109

JRUBY_OPTS환경 변수를 사용하십시오 . JRUBY_OPTS명령 줄에 지정된 인수에 추가되는 인수 목록을 보유합니다.

예 (Linux) :

$ jruby -v
jruby 1.6.0.RC1 (ruby 1.8.7 패치 레벨 330) (2011-01-10 769f847) (Java HotSp ...
$ export JRUBY_OPTS =-1.9
$ jruby -v
jruby 1.6.0.RC1 (ruby 1.9.2 trunk 136) (2011-01-10 769f847) (Java HotSpot (TM ...
$ 내보내기 JRUBY_OPTS =-1.8
$ jruby -v
jruby 1.6.0.RC1 (ruby 1.8.7 패치 레벨 330) (2011-01-10 769f847) (Java HotSpo ...


18

RVM을 사용하면 기본 모드가 기본으로 설정된 JRuby / Rubinius를 빌드 할 수 있습니다.

rvm install jruby-1.6.7-d19 --1.9
rvm install rbx-2.0.testing-d19 --1.9

접미사 -d19는 생략 할 수 있으며 1.8 모드 와 1.9 모드 루비 를 구분하기 위해서만 사용합니다 .

--1.9모드는 JRuby / Rubinius의 다음 주요 릴리스에서 기본값이되므로 rvm 스위치 와 함께 1.8 을 사용하도록 할 수 있습니다 --1.8.

업데이트 2012-05-25 : Jruby 1.7.0.preview1이 출시되었습니다. 기본적으로 1.9입니다!



8

warbler를 사용하여 앱을 war 파일로 패키징하는 경우 다음을 실행하여 버전을 설정할 수 있습니다.

warble config

config/warble.rb파일 을 생성 합니다. 이 파일에는 warbler를 구성하는 방법에 대한 많은 주석이 포함되어 있으며 특히 다음과 같습니다.

  # Set JRuby to run in 1.9 mode.
  # config.webxml.jruby.compat.version = "1.9"

를 제거하여 두 번째 줄의 주석 처리를 제거 #하고 warble명령으로 전쟁을 다시 패키징합니다 .


6

자바에서 jruby를 만드는 경우 :

RubyInstanceConfig config = new RubyInstanceConfig();   
config.setCompatVersion(CompatVersion.Ruby1_9); 
Ruby runtime = Ruby.newInstance(config)

(#jrubyc irc 채널의 bbrowning에 감사드립니다)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.