2011-06-07 59 views
0

我已经升级到rails 2.3.11和ruby 1.9.2,因为我的一些宝石与以前的版本不兼容。现在我无法执行rake命令。当我做耙宝石时出现以下错误:install或rake db:migrate。更新rails版本后无法运行rake

(in C:/Ruby/New/Facebook) 
rake aborted! 
can't convert Symbol into Integer 
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rails-2.3.11/lib/rails/gem_dependency.rb:53: 
in `[]' 
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rails-2.3.11/lib/rails/gem_dependency.rb:53: 
in `initialize' 
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rails-2.3.11/lib/initializer.rb:836:in `new' 

C:/Ruby192/lib/ruby/gems/1.9.1/gems/rails-2.3.11/lib/initializer.rb:836:in `gem' 

C:/Ruby/New/Facebook/config/environment.rb:22:in `block in <top (required)>' 
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rails-2.3.11/lib/initializer.rb:111:in `run' 

C:/Ruby/New/Facebook/config/environment.rb:9:in `<top (required)>' 
<internal:lib/rubygems/custom_require>:29:in `require' 
<internal:lib/rubygems/custom_require>:29:in `require' 
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activesupport-2.3.11/lib/active_support/depe 
ndencies.rb:182:in `block in require' 
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activesupport-2.3.11/lib/active_support/depe 
ndencies.rb:547:in `new_constants_in' 
C:/Ruby192/lib/ruby/gems/1.9.1/gems/activesupport-2.3.11/lib/active_support/depe 
ndencies.rb:182:in `require' 
C:/Ruby192/lib/ruby/gems/1.9.1/gems/rails-2.3.11/lib/tasks/misc.rake:4:in `block 
in <top (required)>' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:634:in `call' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:634:in `block in execute' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:629:in `each' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:629:in `execute' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:595:in `block in invoke_with_call_chain' 
C:/Ruby192/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:605:in `block in invoke_prerequisites' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:602:in `each' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:602:in `invoke_prerequisites' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:594:in `block in invoke_with_call_chain' 
C:/Ruby192/lib/ruby/1.9.1/monitor.rb:201:in `mon_synchronize' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:588:in `invoke_with_call_chain' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:581:in `invoke' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:2041:in `invoke_task' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:2019:in `block (2 levels) in top_level' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:2019:in `each' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:2019:in `block in top_level' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:2058:in `standard_exception_handling' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:2013:in `top_level' 
C:/Ruby192/lib/ruby/1.9.1/rake.rb:1992:in `run' 
C:/Ruby192/bin/rake:31:in `<main>' 

请帮助我,因为我被卡住了几天。

回答

0

您可能需要升级rubygems-update。

运行gem -v查看您当前的版本号。

运行gem update --system升级rubygems。 (您可能需要须藤根据您的设置)

要恢复到以前的版本,运行gem update --system 1.3.7(交换1.3.7之前的版本号)

+0

那么升级后错误没有变化。您可以请其他建议或我应该升级哪个版本? – Sara 2011-06-07 05:40:42

1

看起来像瑞克版本的问题给我。试试这个...

gem uninstall rake # select all options 
gem 'rake', '0.8.7' # Gemfile 
bundle install 
run you rake command 

配售这行代码在你.rvmrc您的根目录将允许您跳过小错误这样的未来。

bundle exec $SHELL 

所有最好的,让我们知道你是如何得到。

+0

感谢您的回复。我做了以下操作: C:\ Ruby \ New \ Facebook> gem卸载rake 您已经请求卸载gem: rake-0.8.7 rails-2.3.11取决于[rake(> = 0.8.3 )] rails-2.3.8取决于[rake(> = 0.8.3)] 如果删除这些宝石,将不会满足一个或多个依赖关系。 继续卸载? [Yn] Y 成功卸载rake-0.8.7 C:\ Ruby \ New \ Facebook> gem'rake','0.8.7' 错误:执行gem时(RuntimeError) 未知命令rake, – Sara 2011-06-07 06:15:36

+0

那么现在如何安装我的rake文件,因为宝石'rake','0.8.7'不起作用 – Sara 2011-06-07 06:19:32

+0

您需要将gem'rake','0.8.7'放入您的Gemfile中。如果你想通过命令行安装,你需要安装rake -v 0.8.7 – CharlesJHardy 2011-06-07 06:42:02

0

你应该想办法解决宝石引发耙子的冲突。尝试运行服务器,如果你成功了,这意味着你可以运行Rake,它与Rake版本befre运行rake无关,为rails提供一个有效的gem列表。

+0

感谢您的回复。我目前的宝石列表如下,但我如何使它成为一个有效的宝石名单 C:\ Ruby \ New \ Facebook>宝石名单 ***本地GEMS *** actionmailer(2.3.11,2.3.8 (2.3.11,2.3.8) activesupport(2.3.11,2.3.8) activerecord(2.3.11,2.3.8) activeresource(2.3.11,2.3.8) 0) MySQL的(2.8.1 x86的的mingw32) 机架(1.1.2) 轨(2.3.11,2.3.8) 耙(0.8.7) 的RDoc(2.5.8) 的rubygems更新(1.8 .5,1.5.2) – Sara 2011-06-07 06:59:27

+0

您是否有为您的项目创建的数据库? – 2011-06-07 07:56:57

相关问题