【发布时间】:2011-09-02 20:19:39
【问题描述】:
在我将 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
【问题讨论】:
-
当我遇到这个问题时,几乎总是因为我的代码中有一些需要'mysql'。你的应用中有这样的声明吗?
-
@mosch 我在代码中的任何地方都没有 require 'mysql',除了它在 mysql-2.8.1/test/test_mysql.rb 中。所以不确定这是不是错误,但是一旦我将 Gemfile 更改为使用 mysql 2.7,它就起作用了。 mysql-2.7 没有 test 文件夹,所以没有 require 'mysql'
-
我明白了,我假设你需要 mysql 2.8.1。
标签: ruby-on-rails bundler