我正在使用rbenv和Ruby 1.9.2-p290,Rails 3.1,数据库是MySQL。
当我尝试
时rake db:create
我收到以下错误:
Could not find multi_json-1.0.3 in any of the sources
我也试过bundle exec rake db:create
。
我的GemFile看起来像这样:
source 'http://rubygems.org'
gem 'rails', '3.1.0'
gem 'mysql2'
gem 'json'
group :assets do
gem 'sass-rails', " ~> 3.1.0"
gem 'coffee-rails', "~> 3.1.0"
gem 'uglifier'
end
gem 'jquery-rails'
答案 0 :(得分:4)
相当陈旧,但万一有其他人遇到这个并正在寻找真正的答案:升级您的捆绑宝石。
答案 1 :(得分:4)
对我来说,既没有工作,也没有工作。
总是得到:
Could not find multi_json-1.3.0 in any of the sources
它对我有用的是删除Gemfile.lock并再次运行bundle install
它安装了新版本的multi_json:
Installing multi_json (1.3.2)
答案 2 :(得分:3)
我也使用Rails 3.1应用程序+ rails引擎遇到了这个问题。
bundle exec rake -T
报告了您报告的错误。
为我解决的是运行以下命令告诉bundler使用以下命令将gem安装到应用程序中的本地'vendor / bundle'路径:
bundle install --path=vendor/bundle
我这样做后,bundle exec rake -T
工作正常。
答案 3 :(得分:2)
我遇到了同样的问题,并使用Jorge的答案来解决问题:
bundle update multi_json
这只是更新multi_json,而不是所有其他宝石,当您删除Gemfile.lock并运行“bundle install”时可能会发生这种情况。
答案 4 :(得分:1)
始终通过bundle exec
运行命令。这样您就可以加载应用程序所需的正确环境。使用它像:
bundle exec rake db:migrate
还要确保您实际运行bundle install
以安装所有必需的gem及其依赖项。