微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – Ruby文件:“ruby_executable_hooks”语法错误

我正在尝试运行命令rake db:migrate,但终端正在抱怨文件 ruby_executable_hooks中可能的语法错误.我发现这个 reference,但没有帮助我解决问题.在文件的第一行,它看起来像title =“ruby#{ARGV *”“}”导致问题,因为双引号没有正确转义.我尝试过不同的逃脱组合,但还是没有运气.所以现在我不知道这个问题是否真的与逃避问题或其他问题有关.非常感谢

请参阅下面的ruby_executable_hooks文件

title = "ruby #{ARGV*" "}"
  $0    = ARGV.shift
  Process.setproctitle(title) if Process.methods.include?(:setproctitle)

  require 'rubygems'

  begin
    require 'executable-hooks/hooks'
    Gem::ExecutableHooks.run($0)
    rescue LoadError
    warn "unable to load executable-hooks/hooks" if ENV.key?
   ('ExecutableHooks_DEBUG')
  end

  eval File.read($0),binding,$0

错误信息:

/Users/username/.rvm/gems/ruby-2.2.3/bin/ruby_executable_hooks:15:in `eval':
 /Users/username/.rvm/rubies/ruby-2.2.3/bin/rake:4: Syntax error,unexpected
 tSTRING_BEG,expecting keyword_do or '{' or '(' (SyntaxError)
 exec "$bindir/ruby" -x "$0" "$@"
                    ^
 from /Users/username/.rvm/gems/ruby-2.2.3/bin/ruby_executable_hooks:15:in
 `<main>'

解决方法

找到解决这个问题的办法
1 - delete the rake version from your system
2 - bundle install rake
3 - rake db:drop:all
4 - rake db:create:all
5 - rake db:migrate

由于某些原因,当我第一次使用命令rake db:migrate它损坏了ruby_executable_hooks文件(不知道为什么).希望这将有助于某人.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐