5

2つのアプリケーションがあります。1つはJRuby1.6.5を1.8モードで実行する必要があり、もう1つはJRuby1.6.7を1.9モードで実行する必要があります。JRUBY_OPTS環境変数を明示的に設定せずに、1つのアプリケーションを1.9モードで実行するようにアプリケーション内で指定することは可能ですか。.rvmrc内で、次のことができます。

proj_1_8 version of .rvmrc
unset JRUBY_OPTS
rvm use jruby-1.6.5@proj_1_8

proj_1_9 version of .rvmrc
export JRUBY_OPTS=--1.9
rvm use jruby-1.6.7@proj_1_9

とにかく、プロジェクトを切り替えるたびに環境変数を手動で設定/設定解除しなくても、モードを自動的に設定できますか?

4

2 に答える 2

3

D3mon-1stVFW が提案したように...

https://github.com/sstephenson/rbenv-varsが役立ちます。

$ ruby-app-dir> jruby --version
jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (Java HotSpot(TM) Client VM 1.6.0_33) [darwin-i386-java]

$ ruby-app-dir> ## Install rbenv-vars as indicated in Github

$ ruby-app-dir> cat .rbenv-vars
JRUBY_OPTS=--1.9

$ ruby-app-dir> jruby --version
jruby 1.6.7.2 (ruby-1.9.2-p312) (2012-05-01 26e08ba) (Java HotSpot(TM) Client VM 1.6.0_33) [darwin-i386-java]
于 2012-08-05T14:30:52.737 に答える
0

これはchrubyで実行できます。

$ chruby jruby --1.9
$ jruby --version
jruby 1.7.0 (1.9.3p203) 2012-10-22 ff1ebbe on OpenJDK 64-Bit Server VM 1.7.0_09-icedtea-mockbuild_2012_10_17_15_53-b00 [linux-amd64]
$ chruby jruby --1.8
jruby 1.7.0 (ruby-1.8.7p370) 2012-10-22 ff1ebbe on OpenJDK 64-Bit Server VM 1.7.0_09-icedtea-mockbuild_2012_10_17_15_53-b00 [linux-amd64]
于 2012-11-21T06:59:26.043 に答える