在运行rake db:create命令时出现错误:class `Singleton'没有`extend_object'方法。

3
当我在我的项目上运行 rake db:create 时,我会得到这个错误:
NameError: undefined method `extend_object' for class `Singleton'
Did you mean?  extended

这个项目以前在 Ruby 3.0.0 上运行,但因为出现了一些崩溃和其他问题,我现在要将其降级至 2.7.1。完整的回溯信息如下:

rake aborted!
NameError: undefined method `extend_object' for class `Singleton'
Did you mean?  extended
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `block in require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:299:in `load_dependency'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/deprecation.rb:3:in `<main>'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `block in require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:299:in `load_dependency'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/rails.rb:26:in `<main>'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `block in require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:299:in `load_dependency'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/actionpack-6.1.2.1/lib/action_dispatch.rb:27:in `<main>'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `block in require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:299:in `load_dependency'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/actionpack-6.1.2.1/lib/action_dispatch/railtie.rb:3:in `<main>'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `block in require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:299:in `load_dependency'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/railties-6.1.2.1/lib/rails.rb:18:in `<main>'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
C:/Users/pupeno/Code/imok/config/application.rb:3:in `<top (required)>'
C:/Users/pupeno/Code/imok/Rakefile:4:in `require_relative'
C:/Users/pupeno/Code/imok/Rakefile:4:in `<top (required)>'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/rake-13.0.3/exe/rake:27:in `<top (required)>'
(See full trace by running task with --trace)

有什么想法是怎么回事?

rake db:migrate 失败了,但是 rails s 看起来是可以工作的(直到它尝试对数据库执行任何操作并抛出 ActiveRecord::NoDatabaseError,这是预期的)。

如果我删除 Bootsnap,则错误为:

NameError: undefined method `extend_object' for class `Singleton'
Did you mean?  extended
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `block in require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:299:in `load_dependency'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/deprecation.rb:3:in `<top (required)>'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `block in require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:299:in `load_dependency'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/rails.rb:26:in `<top (required)>'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `block in require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:299:in `load_dependency'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/actionpack-6.1.2.1/lib/action_dispatch.rb:27:in `<top (required)>'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `block in require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:299:in `load_dependency'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/actionpack-6.1.2.1/lib/action_dispatch/railtie.rb:3:in `<top (required)>'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `block in require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:299:in `load_dependency'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/activesupport-6.1.2.1/lib/active_support/dependencies.rb:332:in `require'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/railties-6.1.2.1/lib/rails.rb:18:in `<top (required)>'
C:/Users/pupeno/Code/imok/config/application.rb:3:in `require'
C:/Users/pupeno/Code/imok/config/application.rb:3:in `<top (required)>'
C:/Users/pupeno/Code/imok/Rakefile:4:in `require_relative'
C:/Users/pupeno/Code/imok/Rakefile:4:in `<top (required)>'
C:/Users/pupeno/scoop/persist/ruby/gems/gems/rake-13.0.3/exe/rake:27:in `<top (required)>'
(See full trace by running task with --trace)
1个回答

0

我遇到了这个非常令人沮丧的问题很长一段时间,我认为它归结于一些宝石不兼容的问题。我通过以下方式修复了它:

rm Gemfile.lock 
bundle install

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接