【问题标题】:How to make JRuby 1.6 default to Ruby 1.9?如何使 JRuby 1.6 默认为 Ruby 1.9?
【发布时间】:2011-06-12 22:58:18
【问题描述】:

让 JRuby 默认以 1.9 模式运行的最佳方法是什么?

也就是说,我想运行 rake test 而不是 jruby --1.9 -S rake test

谢谢

【问题讨论】:

    标签: jruby


    【解决方案1】:

    使用JRUBY_OPTS 环境变量。 JRUBY_OPTS 包含一个参数列表,这些参数添加到命令行上指定的任何参数中。

    例如(在 Linux 上):

    $ jruby -v jruby 1.6.0.RC1 (ruby 1.8.7 patchlevel 330) (2011-01-10 769f847) (Java HotSp... $ 出口 JRUBY_OPTS=--1.9 $ jruby -v jruby 1.6.0.RC1 (ruby 1.9.2 主干 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 ...

    【讨论】:

      【解决方案2】:

      在 Windows 中,使用 set JRUBY_OPTS=--1.9 代替。

      【讨论】:

        【解决方案3】:

        如果你是从 java 创建 jruby:

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

        (感谢 #jrubyc irc 频道上的 bbrowning)

        【讨论】:

          【解决方案4】:

          另一种解决方案是将以下行(和其他设置)放入您的 ~/.jrubyrc 文件中

          compat.version=1.9
          

          【讨论】:

            【解决方案5】:

            RVM 现在允许使用默认设置的默认模式构建 JRuby/Rubinius:

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

            后缀-d19可以省略,我只用它来区分1.81.9模式的红宝石。

            --1.9 模式将在 JRuby/Rubinius 的下一个主要版本中成为默认模式,因此您可以确保将 1.8--1.8 rvm 开关一起使用。

            2012-05-25 更新: Jruby 1.7.0.preview1 已发布,默认为 1.9!

            【讨论】:

              【解决方案6】:

              使用warbler将app打包成war文件时,可以通过运行设置版本:

              warble config
              

              创建一个config/warble.rb 文件。该文件包含很多关于如何配置 warbler 的 cmets,尤其是:

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

              通过删除# 取消注释第二行,并使用warble 命令重新打包您的战争。

              【讨论】:

                猜你喜欢
                • 2011-01-02
                • 1970-01-01
                • 2010-12-25
                • 2018-03-06
                • 1970-01-01
                • 2011-01-01
                • 2011-03-30
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多