我无法访问rails控制台,我正在使用MAC Mojave。我试图用以下替代方案解决,但仍然出现相同的错误。
HTTPS://gist.github.com/wbotelhos / …
如果您正在使用RVM,则可以将ruby版本设置为每个特定的ruby项目。您转到项目文件夹,然后键入:
rvm list #will return list of all installed rubies and which one you're currently using, for example: ruby-2.1.10 [ x86_64 ] ruby-2.1.2 [ x86_64 ] ruby-2.3.4 [ x86_64 ] ruby-2.3.5 [ x86_64 ] ruby-2.3.6 [ x86_64 ] ruby-2.3.7 [ x86_64 ] =* ruby-2.4.1 [ x86_64 ] ruby-2.5.1 [ x86_64 ] ruby-2.6.1 [ x86_64 ]
然后为这个项目选择你想要的ruby版本:
rvm use 2.6.1 # will set RVM to use this version locally from this directory
要在任何新项目上设置默认RVM版本,或者尚未设置本地版本,请执行以下操作:
rvm use 2.6.1 --default
在你的Rails项目的Gemfile中你也可以设置ruby版本,你应该有一行如下:
ruby '~> 2.6.1'
对于每个ruby版本,如果您第一次使用该ruby版本为该项目安装gem,则可能需要在rails项目上至少运行一次:
bundle install
有关更多信息,请参阅 如何使用RVM设置默认的Ruby版本?
你可能编译了你的Ruby版本 libreadline.7.dylib 但更新到 libreadline.8.dylib 最近,例如通过跑步 brew upgrade 。
libreadline.7.dylib
libreadline.8.dylib
brew upgrade
现在Ruby抱怨它找不到 libreadline.7.dylib 再也不在了 /usr/local/opt/readline/lib/ 夹。
/usr/local/opt/readline/lib/
修复:导航到该文件夹并列出其内容
$ cd /usr/local/opt/readline/lib/ $ ls -l
你可能会看到这样的东西:
... libreadline.8.0.dylib ... libreadline.8.dylib -> libreadline.8.0.dylib
然后只需为缺少的旧版本创建一个新的符号链接:
$ ln -s libreadline.8.0.dylib libreadline.7.dylib
由于弹簧问题,它也是可能的。尝试使用以下命令重新启动它:
bin/spring stop
bin/spring start