【问题标题】:How Do I Correct An Error with rails console command?如何使用 rails 控制台命令更正错误?
【发布时间】:2016-10-10 20:56:11
【问题描述】:

当我在 Rails 应用程序的根目录中时,我可以成功执行 rails server。但是,当我尝试执行 rails consolerails c 时,出现以下错误。

[myrailsapp (master)]$ rails c
/Users/myuserid/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/irb/completion.rb:10:in `require': dlopen(/Users/myuserid/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle, 9): Library not loaded: /usr/local/opt/readline/lib/libreadline.6.dylib (LoadError)
  Referenced from: /Users/myuserid/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle
  Reason: image not found - /Users/myuserid/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle
    from /Users/myuserid/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/irb/completion.rb:10:in `<top (required)>'
    from /Users/myuserid/.rvm/gems/ruby-2.3.0@mygemset/gems/railties-4.2.5.2/lib/rails/commands/console.rb:3:in `require'
    from /Users/myuserid/.rvm/gems/ruby-2.3.0@mygemset/gems/railties-4.2.5.2/lib/rails/commands/console.rb:3:in `<top (required)>'
    from /Users/myuserid/.rvm/gems/ruby-2.3.0@mygemset/gems/railties-4.2.5.2/lib/rails/commands/commands_tasks.rb:123:in `require'
    from /Users/myuserid/.rvm/gems/ruby-2.3.0@mygemset/gems/railties-4.2.5.2/lib/rails/commands/commands_tasks.rb:123:in `require_command!'
    from /Users/myuserid/.rvm/gems/ruby-2.3.0@mygemset/gems/railties-4.2.5.2/lib/rails/commands/commands_tasks.rb:58:in `console'
    from /Users/myuserid/.rvm/gems/ruby-2.3.0@mygemset/gems/railties-4.2.5.2/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
    from /Users/myuserid/.rvm/gems/ruby-2.3.0@mygemset/gems/railties-4.2.5.2/lib/rails/commands.rb:17:in `<top (required)>'
    from bin/rails:4:in `require'
    from bin/rails:4:in `<main>'

我已经进行了网络搜索,但我没有找到任何解决此类错误的方法。

【问题讨论】:

标签: ruby-on-rails rvm ruby-on-rails-4.2 rails-console


【解决方案1】:

编辑:好的,运行这个

sudo install_name_tool -change libreadline.6.dylib 
/usr/local/opt/readline/lib/libreadline.6.dylib
/Users/myuserid/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle

sudo install_name_tool -change libreadline.6.dylib 
/usr/local/opt/readline/lib/libreadline.6.dylib
/Users/myuserid/.rvm/rubies/ruby-2.3.0/ruby/2.3.0/x86_64-darwin15/readline.bundle

从旧引用中删除目录

【讨论】:

    【解决方案2】:

    brew rm -f readline

    brew install readline

    brew link readline --force

    参考链接:rails console doesn't load due to libreadline

    【讨论】:

    • 谢谢!我这样做了,并且能够像以前一样执行 rails 控制台。
    • @FilipBartuzi 如有疑问,请强制执行 ;)
    【解决方案3】:

    在我的情况下,使用 rvm 重新安装修复了错误

    rvm reinstall 2.3.0
    

    【讨论】:

      猜你喜欢
      • 2012-11-30
      • 1970-01-01
      • 1970-01-01
      • 2016-06-10
      • 2015-10-16
      • 1970-01-01
      • 1970-01-01
      • 2014-06-22
      相关资源
      最近更新 更多