【问题标题】:odd number list for Hash on very basic script [closed]非常基本的脚本上哈希的奇数列表[关闭]
【发布时间】:2013-08-03 12:16:30
【问题描述】:

这是我的代码(全部):

require "rubygems"
require "ruby-box"

安装了 ruby​​gems,并将 ruby​​-box 安装为 gem。这是我的错误:

Faraday: you may want to install system_timer for reliable timeouts
/Library/Ruby/Site/1.8/rubygems/core_ext/kernel_require.rb:45:in `gem_original_require': /Library/Ruby/Gems/1.8/gems/ruby-box-1.9.1/lib/ruby-box/item.rb:91: odd number list for Hash (SyntaxError)
        access: 'open'
               ^
/Library/Ruby/Gems/1.8/gems/ruby-box-1.9.1/lib/ruby-box/item.rb:91: syntax error, unexpected ':', expecting '}'
        access: 'open'
               ^
/Library/Ruby/Gems/1.8/gems/ruby-box-1.9.1/lib/ruby-box/item.rb:92: syntax error, unexpected '}', expecting kEND
      }.merge(opts) if opts
       ^
/Library/Ruby/Gems/1.8/gems/ruby-box-1.9.1/lib/ruby-box/item.rb:102: odd number list for Hash
        shared_link: opts
                    ^
/Library/Ruby/Gems/1.8/gems/ruby-box-1.9.1/lib/ruby-box/item.rb:102: syntax error, unexpected ':', expecting '}'
        shared_link: opts
                    ^
    from /Library/Ruby/Site/1.8/rubygems/core_ext/kernel_require.rb:45:in `require'
    from /Library/Ruby/Gems/1.8/gems/ruby-box-1.9.1/lib/ruby-box.rb:4
    from /Library/Ruby/Site/1.8/rubygems/core_ext/kernel_require.rb:110:in `gem_original_require'
    from /Library/Ruby/Site/1.8/rubygems/core_ext/kernel_require.rb:110:in `require'
    from box.rb:2

【问题讨论】:

  • 你有什么问题?

标签: ruby rubygems


【解决方案1】:

看起来您使用的是 Ruby 1.8,但正在尝试使用 Ruby 1.9 中添加的散列文字语法:

{ foo: bar }

在 Ruby 1.8 中,您需要编写:

{ :foo => bar }

但如果您刚刚开始,我建议您只需升级您的 Ruby 版本,而不是重写您的代码。

请注意,如果散列是方法调用的参数,大括号有时会被省略。

【讨论】:

  • 你误会了;我在上面粘贴的两行代码,要求行,这就是我拥有的所有代码。也许散列文字在 ruby​​-box 库中。
  • @Andrew 他们是,如错误所示。
  • 好吧,那么你唯一的选择就是升级你的 Ruby。
  • 如何升级 ruby​​?我在 Mac 上,并尝试了此处的说明,但它仍然给我同样的错误 stackoverflow.com/questions/3696564/…
  • 我建议您像该问题中的答案一样使用 RVM,并查看 RVM 文档了解更多详细信息。一旦你安装了 Ruby,你需要告诉 RVM 默认使用它,并且可能需要重启你的终端。
猜你喜欢
  • 2013-11-17
  • 1970-01-01
  • 1970-01-01
  • 2010-09-21
  • 2015-11-23
  • 2021-08-16
  • 2017-05-01
  • 2017-01-24
  • 2021-09-24
相关资源
最近更新 更多