2012-11-06 36 views
2

人源(捆紮機:: GemNotFound),找不到耙0.9.2.2在任何使用WINDWOS 7(無RVM)

我是新來的ROR,沒有血性新的(再),但雛將應用移至生產。爲了理解生產流程如何運作,我創建了一個非常簡單的rails項目。以下是有關我的系統的一些基本的相關信息(在Windows 7上運行):

Ruby version    1.9.3 (i386-mingw32) 
RubyGems version   1.8.24 
Rack version    1.4 
Rails version    3.2.8 
JavaScript Runtime   JScript 
Active Record version  3.2.8 
Action Pack version   3.2.8 
Active Resource version  3.2.8 
Action Mailer version  3.2.8 
Active Support version  3.2.8 
Application root   C:/Sites/railstest 
Environment     development 
Database adapter   sqlite3 
Database schema version  0 

中間件:

ActionDispatch::Static 
Rack::Lock 
#<ActiveSupport::Cache::Strategy::LocalCache::Middleware:0x2a70f20> 
Rack::Runtime 
Rack::MethodOverride 
ActionDispatch::RequestId 
Rails::Rack::Logger 
ActionDispatch::ShowExceptions 
ActionDispatch::DebugExceptions 
ActionDispatch::RemoteIp 
ActionDispatch::Reloader 
ActionDispatch::Callbacks 
ActiveRecord::ConnectionAdapters::ConnectionManagement 
ActiveRecord::QueryCache 
ActionDispatch::Cookies 
ActionDispatch::Session::CookieStore 
ActionDispatch::Flash 
ActionDispatch::ParamsParser 
ActionDispatch::Head 
Rack::ConditionalGet 
Rack::ETag 
ActionDispatch::BestStandardsSupport 

我的虛擬主機是webhostone。

這裏是我做過什麼:

  1. 生成一個新的Rails應用程序稱爲railstest使用:軌道新railstest
  2. 更新了版本的Gemfile我的虛擬主機提供商使用
  3. 運行「包安裝--deployment「以在供應商目錄中擁有所有的寶石。
  4. FTP'ed一切的虛擬主機提供商
  5. 成功運行包通過膩子

安裝但當我致電該網站,我總是得到這樣的: http://www.kernification.de/rails/info/properties (我沒有足夠的聲譽來在這裏發佈圖片...)

我試了很多(我爲這個問題爭取了1.5周的時間),但它似乎一直是同樣的問題。網絡主機支持告訴我,寶石位於1.9.1,而不是1.8,我對此有一些疑問:

  1. 什麼是1.9.1(或1.8)版本?紅寶石?寶石?
  2. 我該如何強制尋找1.9.1而不是1.8的寶石?

我也試過使用pik作爲版本管理器,但我只會使用webhostone到目前爲止,所以我很高興如果我有一個版本的ruby安裝工作。到目前爲止,我不需要在任何版本之間切換。我也搬到了xubuntu,在那裏創建了同樣簡單的應用程序,結果相同。

如果您可以分享您的經驗,非常感謝,非常感謝!

+0

此外,我會建議使用SCP或SFTP而不是FTP將您的應用程序轉移到部署服務器上。兩者都提供加密文件傳輸到加密認證的SSH服務器。 – aef

+0

更新: 今天我刪除了rails,並拿了一個railsinstaller,它給了我相同的版本,就像在產品上。服務器: **服務器:** '$軌-v' '的Rails 3.2.8' '$紅寶石-v' 「紅寶石1.9.2p0(2010-08-18修訂29036)的i486-linux的] ' '$寶石-v' '1.8.24' **本地的Windows:** 'C:\網站>軌-v' '的Rails 3.2.8' ' C:\網站>紅寶石-v' 'ruby 1.9.2p290(2011-07-09)[i386-mingw32]' 'C:\ Sites> gem -v' '1.8.24' 問題仍然類似,生產導軌是看在...寶石/ 1.8/...而不是...寶石/ 1.9.1/...爲寶石。 – kernification

+0

請查閱您的GemFile瞭解更多詳情。錯誤看起來像寶石位於1.8和Ruby1.9.3它應該在1.9.1目錄 –

回答

0

我打了一個電話給我的webhost支持,它看起來像問題是與Apache配置有關。它仍然不是固定的,但上述問題已經消失。現在有一個新的問題,但這是一個不同的故事,我會首先在這個非常棒的論壇中進行搜索。 非常感謝您的幫助。

0

您列出的版本號與Ruby版本匹配。通過設置GEM_HOME環境變量,可以告訴Rubygems在哪裏查找本地gem存儲庫。但這可能不是你想要做的,因爲Bundler應該提供所有的寶石。

致電bundle install --deployment您的應用程序需要的所有寶石應捆綁在vendor/bundle目錄中。因此我不明白爲什麼您在部署站點上再次調用bundle install

您可以檢查部署服務器上的應用程序文件夾是否包含rake gem,並綁定到vendor/deploy

+0

嗨礁, 感謝您的回覆!沒有什麼特別的原因讓我在部署站點上運行軟件包安裝,期望它沒有工作,並且我沒有比嘗試安裝軟件包更好的想法... 好的提示來檢查供應商目錄。我發現 rake-0.9.2.2 in railstest \ vendor \ bundle \ ruby​​ \ 1.9.1 \ gems \, 因此目前看起來確定無疑。 – kernification

相關問題