2014-01-15 72 views
0

我的應用程序出現錯誤,所以我查看堆棧,發現一個答案undefined method `require_relative' for main:Object (NoMethodError)它說我應該運行gem install rails這是我做的,在我運行之後,當我嘗試運行時rails generate controller StaticPages home help --no-test-framework 我得到了一個錯誤:我正在運行的軌道0.95Running rails-0.9.5 error

(in /usr/local/rvm/gems/[email protected]_rails_4_0/gems/rails-0.9.5) 
rake aborted! 
ERROR: 'rake/rdoctask' is obsolete and no longer supported. Use 'rdoc/task' (available in RDoc 2.4.2+) instead. 
/usr/local/rvm/gems/[email protected]_rails_4_0/gems/rails-0.9.5/Rakefile:3:in `<top (required)>' 

它說,甚至當我跑gem update rails什麼happend

這裏是我的Gemfile

source 'https://rubygems.org' 
ruby '2.0.0' 

gem 'rails', '4.0.2' 

group :development, :test do 
    gem 'sqlite3', '1.3.8' 
    gem 'rspec-rails', '2.13.1' 
end 

group :test do 
    gem 'selenium-webdriver', '2.35.1' 
    gem 'capybara', '2.1.0' 
end 

gem 'sass-rails', '4.0.1' 
gem 'uglifier', '2.1.1' 
gem 'coffee-rails', '4.0.1' 
gem 'jquery-rails', '3.0.4' 
gem 'turbolinks', '1.1.1' 
gem 'jbuilder', '1.0.2' 

group :doc do 
    gem 'sdoc', '0.3.20', require: false 
end 

group :production do 
    gem 'pg', '0.15.1' 
    gem 'rails_12factor', '0.0.2' 
end 
+0

嘗試運行'bundle exec rails generate ...' – gotva

+0

@gotva你碰巧知道爲什麼我需要運行bundle exec,因爲我從來沒有必要在 – neils

+1

之前運行它實際上你應該爲'rails'做到這一點, 'rake','rspec'等,因爲Bundle知道在APP中使用的是什麼版本的寶石(Bundler從Gemfile.lock中取得版本) - 這意味着命令將從正確的源開始。 PS如果你還沒有閱讀關於捆綁 - 閱讀[關於捆綁器](http://bundler.io/)PPS是否幫助你? – gotva

回答

0

嘗試刪除您的Gemfile.lock(或者移動它)。這對我有效。