2013-05-17 16 views
4

我想在共享主機上運行Ruby on Rails網站。當我到了rake db:create(或rake全部)按照本教程http://guides.rubyonrails.org/v2.3.8/getting_started.html我得到不能使用本地安裝的寶石

ERROR: 'rake/rdoctask' is obsolete and no longer supported. Use 'rdoc/task' (available in RDoc 2.4.2+) instead.

我試圖gem install rdoc -v 2.4.2(也試過gem install rake --version 0.8.7這裏建議ERROR: 'rake/rdoctask' is obsolete and no longer supported),但我的問題是,其他版本在全球範圍內安裝在系統由我的託管服務提供商和任何原因的全球版本覆蓋當地的。

我也試過gem install bundler嘗試指定版本(這裏建議Use older version of Rake),但我沒有通過我的託管服務提供商,這可能讓我做安裝RVM與

/usr/lib/ruby/site_ruby/1.8/rubygems/dependency.rb:247:in `to_specs': Could not find bundler (>= 0) amongst [actionmailer-2.3.15, actionpack-2.3.15, activerecord-2.3.15, activerecord-mysql2-adapter-0.0.3, activeresource-2.3.15, activesupport-2.3.15, cgi_multipart_eof_fix-2.5.0, daemons-1.1.9, fastthread-1.0.7, gem_plugin-0.2.3, mongrel-1.1.5, mysql2-0.3.11, rack-1.1.5, rails-2.3.15, rake-10.0.3, rubygems-update-1.8.25, sqlite3-1.3.7] (Gem::LoadError)

bundle響應像這樣的RVM doesn't set correct gem path

奇怪的是gem which rake給我

~/ruby/gems/gems/rake-0.8.7/lib/rake.rb

(由瞞着我的主目錄),但~/ruby/gems/gems/rake-0.8.7/bin/rake --version給我

rake, version 10.0.3

我得到的RDoc類似的結果,並~/ruby/gems/gems/bundler-1.3.5/bin/bundle --version給我

/home/ko64eto/ruby/gems/gems/bundler-1.3.5/bin/bundle:7:in `require': no such file to load -- bundler (LoadError) from /home/ko64eto/ruby/gems/gems/bundler-1.3.5/bin/bundle:7

我能做些什麼來解決rak e vs rdoc衝突。我是否需要問我的託管服務提供商安裝RVM還是可以做其他事情?如果我聯繫他們,是否還有其他的選擇可以讓他們問問他們(比如讓他們在全球安裝bundler或更新rdoc)?

回答

0

您使用的是哪個版本的Rails?你能分享你的Gemfile嗎?

如果您使用的是Rails 3.2.x,那麼您可以嘗試bundle install --deployment。您的託管服務提供商應該已經安裝了捆綁軟件。是否安裝了bundler?試試gem list bundler並告訴我你看到了什麼。

如果安裝了bundler,那麼你想嘗試bundle exec rake db:setup或bundle exec rake db:create。然後bundler將在您的gemfile中使用rake的版本。

+0

我正在使用'Rails 2.3.15'。 我不確定我的Gemfile。我想我發現它應該在我的項目目錄中,但是那裏沒有這樣的文件。 以前沒有在我的本地安裝中安裝捆綁軟件,並且本地安裝提供了問題中報告的錯誤消息。 '寶石列表bundler'返回 > *** REMOTE GEMS *** >捆綁(1.3.5) 由幾個bundler- *包 – mapto

+1

我強烈建議你移動到一個Rails應用程序3我記得在Rails 2中有很多寶石問題:(我不太確定,但是你有沒有嘗試在你的項目中使用寶石?如果不是,我可能會感到抱歉。 –