Ruby 无法加载此类文件 - active_support/core_ext/object/blank

Posted

技术标签:

【中文标题】Ruby 无法加载此类文件 - active_support/core_ext/object/blank【英文标题】:Ruby cannot load such file - active_support/core_ext/object/blank 【发布时间】:2019-07-20 04:16:16 【问题描述】:

我试图运行brew doctor,但系统弹出错误

/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require': 无法加载此类文件 -- active_support/core_ext/object/blank (LoadError)

在网上搜索,另一个帖子建议只是“gem install activesupport”,但后来我遇到了以下错误:

ERROR:  Error installing activesupport:
    i18n requires Ruby version >= 2.3.0.

我也尝试 rvm install ruby​​-2.3.0 但同样的错误再次弹出

[2019-02-26 10:07:41] requirements_osx_brew_libs_install
requirements_osx_brew_libs_install ()   
    brew install "$@" --force ||  
        \typeset ret=$?;
        requirements_osx_brew_libs_error "installation";
        return $ret
      current path: /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib
PATH=/Users/user_name/.aw/pex_resources/scripts/binaries:/usr/local/sbin:/Users/fengjiao/.rbenv/shims:/Users/user_name/.nvm/v0.10.32/bin:/Users/fengjiao/bin:/usr/local/sbin:/usr/local/bin:/Users/user_name/.rbenv/shims:/Users/user_name/.nvm/v0.10.32/bin:/Users/user_name/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/munki:/opt/X11/bin:/Users/fengjiao/gocode/bin:/Users/user_name/.rvm/bin
command(10): requirements_osx_brew_libs_install autoconf automake
libtool pkg-config coreutils libyaml readline libksba openssl@1.1
++ brew install autoconf automake libtool pkg-config coreutils libyaml readline libksba openssl@1.1 --force
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in
`require': cannot load such file --
active_support/core_ext/object/blank (LoadError)    from
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in
`require'   from /usr/local/Homebrew/Library/Homebrew/global.rb:10:in
`<top (required)>'  from
/usr/local/Homebrew/Library/Homebrew/brew.rb:21:in `require_relative'
    from /usr/local/Homebrew/Library/Homebrew/brew.rb:21:in `<main>'
++ typeset ret=1
++ requirements_osx_brew_libs_error installation
++ rvm_warn 'There were package installation errors, make sure to read the log.

Try `brew tap --repair` and make sure `brew doctor` looks reasonable.

【问题讨论】:

【参考方案1】:

运行 brew style 为我解决了这个问题。


更新

正如 cmets 中提到的,对于某些人来说,解决方案是:

brew update-reset

【讨论】:

@Mave for me 是在我跑完brew cleanup之后发生的@ @crisscross 请添加您的命令作为答案,这是唯一对我有用的东西,谢谢 :) @BigHeadCreations ,@Mave:我能够确认这是在brew cleanup 之后直接发生的。就在此之前,brew update 表示已更新提交:6db1c7383brew update-reset 解决了这个问题。 谢谢!!我使用brew update-reset 解决了我的问题 适用于 macOS 10.15【参考方案2】:

遇到了同样的问题。我必须运行 brew update-reset 来修复它。

【讨论】:

【参考方案3】:

我在将 ruby​​ 版本 ruby​​ 2.2 升级到 ruby​​ 2.5 for rails 4.2 时遇到了“sunspot_rails-2.1.0”问题,在这里我想与您分享对我有用的方法。

"LoadError: 没有要加载的文件 -- active_support/core_ext/object/to_json"

参考:https://github.com/sunspot/sunspot/pull/555/files

【讨论】:

【参考方案4】:

就我而言,我必须强制 homebrew/linuxbrew 使用它自己的便携式 ruby​​ 来修复它。

我正在运行安装了 ruby​​ 2.7.0 的 ArchLinux,在我按照manpage 中的描述通过 export HOMEBREW_FORCE_VENDOR_RUBY=1 切换到 homebrew 的便携式 ruby​​ 并发出 brew update 后,homebrew 会自动下载便携式 ruby​​ 2.6.3,并且一切恢复正常。

我认为根本原因可能是自制程序与更高版本的 ruby​​ 不兼容。

【讨论】:

以上是关于Ruby 无法加载此类文件 - active_support/core_ext/object/blank的主要内容,如果未能解决你的问题,请参考以下文章

乘客:无法加载此类文件 ruby​​gems/builder

安装 ruby​​-2.1.2:无法加载此类文件 -- openssl (LoadError)

Ruby on Rails:“无法加载此类文件”事件机器

Ruby 雾 gem 导致服务器无法运行:无法加载此类文件 -- xmlrpc/client (LoadError)

为啥我无法加载此类文件?

Ruby 无法加载此类文件 - active_support/core_ext/object/blank