2011-04-02 47 views
0

在Windows 7上使用Ruby 1.9.2-P180和Rails 3.0.5安裝,如果我當前的Rails 3.0.5和Bundler依賴項設置是否錯誤?

rails new trytry 
cd trytry 
bundle install 

它只有在經過

gem install bundler 

或可能顯示

C:\ror\trytry>bundle install 
c:/ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/ui.rb:46:in `<class:UI>': uninitialized constant Gem::SilentUI (NameError) 
     from c:/ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/ui.rb:2:in `<module:Bundler>' 
     from c:/ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/ui.rb:1:in `<top (required)>' 
     from c:/ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/cli.rb:17:in `initialize' 
     from c:/ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/vendor/thor.rb:246:in `new' 
     from c:/ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/vendor/thor.rb:246:in `dispatch' 
     from c:/ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/lib/bundler/vendor/thor/base.rb:389:in `start' 
     from c:/ruby192/lib/ruby/gems/1.9.1/gems/bundler-1.0.0/bin/bundle:13:in `<top (required)>' 
     from c:/Ruby192/bin/bundle:19:in `load' 
     from c:/Ruby192/bin/bundle:19:in `<main> 

a

gem update bundler 

然後bundle install將工作。所以看起來Rails 3.0.5需要一個更新的捆綁器,它在依賴關係中沒有正確列出?否則當我爲爲3.0.5時,它應該有更新捆綁器以及,是嗎?

+0

根據我的經驗,Windows 7上的Rails只使用Ruby 1.8.7穩定,特別是一旦你開始安裝gem。 – RSG 2011-04-02 21:47:49

回答

0

您已安裝Bundler的較早版本,您需要運行gem install bundler以將其更新至最新版本。

Rails依賴與Bundle的版本匹配的依賴版本~> 1.0。如果您已安裝Bundler版本(例如1.0.0),則gem install rails的進程會發現此相關性已匹配,因此不會更新Bundler。因此,您需要運行gem install bundler以將其更新爲最新版本。

+0

是不是我在帖子中說的?我只是問,在rubygems方面有一些依賴設置錯誤 – 2011-04-02 22:05:26

+0

@動靜能量:現在更新答案 – 2011-04-02 23:37:32

+0

因此,Rails應該確實設置更高的依賴性,比如'> 1.0.6'或其他什麼。這是我問的問題,而不是我是否應該運行'gem update bundler' – 2011-04-03 07:06:51