请修复bundler问题:你已经激活了mysql 2.7,但是你的Gemfile需要mysql 2.8.1。考虑使用bundle exec

时间:2011-05-26 18:16:58

标签: ruby-on-rails bundler

我将rails 2.2.2应用程序部署到生产后我收到此错误: “你已经激活了mysql 2.7,但你的Gemfile需要mysql 2.8.1。考虑使用bundle exec”

Gemfile具有正确的信息。我该如何解决这个问题?

更新 我想使用gem 'mysql', '2.8.1'但不知何故对我不起作用。这是我在服务器gem列表中的内容:

....
libxml-ruby (1.1.3)
memcache-client (1.6.3)
mysql (2.7)
net-scp (1.0.2)
net-sftp (2.0.2)
net-ssh (2.0.11)
....

以下是我的Gemfile的样子:

require 'rubygems'
source 'http://rubygems.org'
source 'http://gemcutter.org'
source 'http://gems.github.com'
gem 'rails', '2.2.2'
gem 'hpricot', '0.6.0'
gem "composite_primary_keys", '2.2.0'
gem 'javan-whenever', '0.3.7'
gem 'mysql', '2.7' ** earlier I was trying with 2.8.1 then used 2.7 and it worked**
gem 'activerecord-oracle_enhanced-adapter', '1.1.9'
gem 'ruby-oci8', '1.0.3'
gem 'crypto', '0.0.3'
gem 'rack', '1.0.0'
gem 'mechanize', '1.0.0'

group :test do
  gem 'mocha', '0.9.5'
  gem 'rspec',             '1.3.1', :require => 'spec'
  gem 'rspec-rails',       '1.3.3'
end

group :cruise do
  gem 'metric_fu', '1.5.1'
end

2 个答案:

答案 0 :(得分:1)

尝试在Gemfile中显式设置mysql版本:gem "mysql", "2.7"

答案 1 :(得分:0)

您是否尝试卸载2.7版本,然后安装2.8版本?我问的原因是我与另一个宝石面临完全相同的错误......就在昨天。我用这些简单地解决了这个问题:

gem uninstall mysql -v 2.7
gem install mysql -v 2.8.1

我相信如果您运行第一个命令然后运行bundle install,您将获得正确的命令。或者您可以返回并将Gemfile中的版本字符串更改为您真正想要的版本字符串。