Rubinius语法错误

时间:2013-01-07 22:16:01

标签: ruby lambda ruby-1.9 rubinius locomotivecms

使用LocomotiveCMS处理Rubinius时遇到了一堆语法错误。所有这些都与expecting '|'一致。没有人发布issues关于此事,所以我想我会问:我该如何解决这些问题?这是Rubinius的问题吗?

1 个答案:

答案 0 :(得分:1)

首先,LocomotiveCMS仅支持“Ruby的最新版本”(Ruby 1.9.2及更高版本)。 View the requirements section

Rubinius默认使用Ruby 1.8.7(view on rvm.io)。如果查看大多数语法错误发生的行,如app/models/locomotive/page.rb,那么它们最有可能出现在“lambdas”中,直到Ruby 1.9才支持它。

要解决这个问题,你可以让Rubinius(rbx)以两种方式使用Ruby 1.9:

  1. 使用rvm使用Ruby 1.9作为默认值重新安装rbx:

    rvm reinstall rbx --1.9
    

    注意:如果rvm使用rvm get masterrvm get stable抱怨错误的参数upgrade rvm

  2. 或者,如果您不想完全重新安装rbx,可以在您将调用Rubinius的目录中设置一个环境变量,就像在rails根目录中一样。

    export RBXOPT=-X19
    

    您可以使用rbx -v检查环境变量是否已设置,以检查Ruby版本。它应该返回类似的内容:

    rubinius 2.0.0.rc1 (1.9.3 release ...)
    

    注意:如果您从其他目录运行Rubinius,则需要再次设置此选项。