rake db:migrate给出了不兼容的库版本错误

问题描述 投票:0回答:2

执行rake db:migrate时出现以下错误

捆绑安装已执行带有成功消息-捆绑完成! 102个Gemfile依赖项,现已安装252个Gem。

/Users/username/.rvm/gems/ruby-2.3.1@portal/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:274:in `require': incompatible library version - /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/pg-0.18.4/lib/pg_ext.bundle (fatal)

    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:274:in `block in require'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:240:in `load_dependency'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:274:in `require'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/pg-0.18.4/lib/pg.rb:4:in `<top (required)>'
    from /Users/username/.rvm/rubies/ruby-2.3.1/lib/ruby/site_ruby/2.3.0/bundler/runtime.rb:81:in `require'
    from /Users/username/.rvm/rubies/ruby-2.3.1/lib/ruby/site_ruby/2.3.0/bundler/runtime.rb:81:in `block (2 levels) in require'
    from /Users/username/.rvm/rubies/ruby-2.3.1/lib/ruby/site_ruby/2.3.0/bundler/runtime.rb:76:in `each'
    from /Users/username/.rvm/rubies/ruby-2.3.1/lib/ruby/site_ruby/2.3.0/bundler/runtime.rb:76:in `block in require'
    from /Users/username/.rvm/rubies/ruby-2.3.1/lib/ruby/site_ruby/2.3.0/bundler/runtime.rb:65:in `each'
    from /Users/username/.rvm/rubies/ruby-2.3.1/lib/ruby/site_ruby/2.3.0/bundler/runtime.rb:65:in `require'
    from /Users/username/.rvm/rubies/ruby-2.3.1/lib/ruby/site_ruby/2.3.0/bundler.rb:114:in `require'
    from /Users/username/Documents/portal/config/application.rb:16:in `<top (required)>'
    from /Users/username/Documents/portal/Rakefile:4:in `require'
    from /Users/username/Documents/portal/Rakefile:4:in `<top (required)>'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/rake-11.2.2/lib/rake/rake_module.rb:28:in `load'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/rake-11.2.2/lib/rake/rake_module.rb:28:in `load_rakefile'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/rake-11.2.2/lib/rake/application.rb:686:in `raw_load_rakefile'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/rake-11.2.2/lib/rake/application.rb:96:in `block in load_rakefile'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/rake-11.2.2/lib/rake/application.rb:178:in `standard_exception_handling'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/rake-11.2.2/lib/rake/application.rb:95:in `load_rakefile'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/rake-11.2.2/lib/rake/application.rb:79:in `block in run'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/rake-11.2.2/lib/rake/application.rb:178:in `standard_exception_handling'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/rake-11.2.2/lib/rake/application.rb:77:in `run'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/gems/rake-11.2.2/exe/rake:27:in `<top (required)>'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/bin/rake:23:in `load'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/bin/rake:23:in `<main>'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/bin/ruby_executable_hooks:24:in `eval'
    from /Users/username/.rvm/gems/ruby-2.3.1@portal/bin/ruby_executable_hooks:24:in `<main>'

预先感谢

ruby-on-rails ruby rake rails-migrations
2个回答
0
投票

看来您的postgres gem版本与该版本的activesupport不兼容。

请发布这些文件,以便我们获取更多信息:-.ruby-version(如果存在)-.ruby-gemset(如果存在)-.rvmrc(如果存在)-宝石文件-Gemfile.lock

我猜您的ActionSupport(rails库)已升级,并且系统的PostgreSQL无法升级到您的应用程序需要的postgres Gem版本。


0
投票

根据描述和问题中提到的日志,似乎有损坏的PATH,但是在浏览了一些链接之后,发现下面提到的链接暗示着ruby-2.3.1。中的错误。

https://bugs.ruby-lang.org/issues/9760#note-14

作为一种快速的解决方法,我建议安装ruby-2.3.3。执行以下提到的命令进行安装:

rvm install ruby-2.3.3
rvm gemset empty
gem install bundler
bundle install

它肯定会工作,因为我也在本地计算机上安装了此ruby版本,并且可以工作。

© www.soinside.com 2019 - 2024. All rights reserved.