Rubinius语法错误



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

首先,机车ecms只支持"最新版本的Ruby"(Ruby 1.9.2及更高版本)。查看需求部分。

Rubinius默认为Ruby 1.8.7(在rvm.io上查看)。如果你看一下像app/models/locomotive/page.rb这样出现语法错误的行,它们很可能是在Ruby 1.9之前不支持的"lambdas"中。

可以通过以下两种方式让Rubinius (rbx)使用Ruby 1.9:

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

    rvm reinstall rbx --1.9
    
  2. 注意:如果rvm抱怨错误的参数,请使用rvm get masterrvm get stable升级rvm。
  3. 或者,如果你不想完全重新安装rbx,你可以在你将要调用Rubinius的目录中设置一个环境变量,就像在rails根目录中一样。

    export RBXOPT=-X19
    

    可以通过rbx -v检查Ruby版本来检查环境变量是否设置。它应该返回如下内容:

    rubinius 2.0.0.rc1 (1.9.3 release ...)
    
  4. 注意:如果你从另一个目录运行Rubinius,你需要再次设置这个选项。

最新更新