2010-09-02 64 views
7

我一直在搞RubyOnRails3和Git的第一次。一切都一帆風順,直到突然之間任何軌道相關的命令行參數停止工作。不幸的是,我不知道是什麼導致了這個問題,或者怎麼去解決它。lockfile_parser.r:48:在`parse_source':未定義的方法`[]'爲零:NilClass(NoMethodError)

這裏的命令行

C:\railstest\railsproject>rails 
C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/lockfile_parser.rb 
:48:in `parse_source': undefined method `[]' for nil:NilClass (NoMethodError) 
     from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/lockf 
ile_parser.rb:20:in `block in initialize' 
     from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/lockf 
ile_parser.rb:14:in `each' 
     from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/lockf 
ile_parser.rb:14:in `initialize' 
     from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/defin 
ition.rb:43:in `new' 
     from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/defin 
ition.rb:43:in `initialize' 
     from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/dsl.r 
b:122:in `new' 
     from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/dsl.r 
b:122:in `to_definition' 
     from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/defin 
ition.rb:20:in `build' 
     from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler.rb:12 
8:in `definition' 
     from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler.rb:11 
6:in `load' 
     from C:/Ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler.rb:10 
0:in `setup' 
     from C:/railstest/railsproject/config/boot.rb:8:in `<top (required)>' 
     from <internal:lib/rubygems/custom_require>:29:in `require' 
     from <internal:lib/rubygems/custom_require>:29:in `require' 
     from script/rails:5:in `<main>' 

輸出我不完全相信其他信息,以提供

+0

感謝您的解決方案,這正是我遇到的問題。注意:您可能必須刪除出現問題的每個分支的gemfile.lock文件。至少,我不得不這樣做。 – Dave 2010-09-17 18:32:05

回答

13

好像有在Gemfile.lock文件中的一些問題。您可以嘗試刪除此文件並再次運行bundle install以查看它是否可以正確重新創建它。

+0

謝謝你。我有同樣的問題,現在已經修復了! – fuzz 2011-01-04 04:29:18

+1

此外,也許做一個'git diff Gemfile.lock'或類似的東西,看看你是否意外修改了文件,就像我一樣。這是你不必垃圾。 – Derek 2013-01-30 04:56:52

+0

@DerekB。好點子。直接刪除鎖定文件並不是一個好主意,因爲它指定了您的應用當前依賴並經過測試的版本。 – 2013-01-30 16:24:26

相關問題