使 JRuby 在默认情况下以1.9模式运行的最佳方法是什么?
即,我想运行 rake test而不是 jruby --1.9 -S rake test
rake test
jruby --1.9 -S rake test
谢谢你
使用 ABc0环境变量。JRUBY_OPTS包含一个参数列表,这些参数被添加到命令行上指定的任何参数中。
JRUBY_OPTS
例如(在 Linux 上) :
$ jruby -v jruby 1.6.0.RC1 (ruby 1.8.7 patchlevel 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... $ export JRUBY_OPTS=--1.8 $ jruby -v jruby 1.6.0.RC1 (ruby 1.8.7 patchlevel 330) (2011-01-10 769f847) (Java HotSpo...
在视窗中,使用 取而代之的是 set JRUBY_OPTS=--1.9。
set JRUBY_OPTS=--1.9
如果你正在用 java 创建 jruby:
RubyInstanceConfig config = new RubyInstanceConfig(); config.setCompatVersion(CompatVersion.Ruby1_9); Ruby runtime = Ruby.newInstance(config)
(感谢 # jrubyc irc 频道的褐变)
另一种解决方案是在 ~/. jrubyrc 文件中放入以下代码行(和其他设置)
compat.version=1.9
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模式的红宝石。
-d19
在 JRuby/Rubinius 的下一个主要版本中,--1.9模式将成为默认模式,因此您可以确保使用带有 --1.8 rvm 开关的 1.8。
--1.9
--1.8
更新2012-05-25: Jruby 1.7.0. preview1出局,默认为1.9!
当使用 warbler 将应用程序打包为 war 文件时,可以通过运行以下命令来设置版本:
warble config
这个文件包含很多关于如何配置 warbler 的注释,特别是:
# Set JRuby to run in 1.9 mode. # config.webxml.jruby.compat.version = "1.9"
通过删除 #取消对第二行的注释,并使用 warble命令重新打包 war。
#
warble