2012-04-17 26 views
1

我有一個我試圖部署到互聯網上的rails應用程序。我在Amazon EC2雲上設置了一臺服務器,我知道這是因爲我已經在同一臺計算機上部署了另一個站點。試圖部署時有效支持的困難

當我嘗試無論是通過「軌道控制檯」或運行時,運行此新應用「耙分貝:種子」或只是想瀏覽應用程序,軌道崩潰說,它不能activiesupport發現:

/home/ec2-user/.gem/ruby/1.9.1/gems/activesupport-3.2.2/lib/active_support/core_ext/big_decimal/conversions.rb:1:in`require':無法加載此文件 - bigdecimal(LoadError)

我的Rails版本是3.2.2,我使用的是Ruby 1.9.3p0(2011-10-30)[x86_64-linux]。我的數據庫是通過Mongoid訪問的MongoDB。我使用Passenger和Apache作爲服務器。

是否有任何配置步驟或類似的東西,我錯過了?

P.S.我知道我不應該使用ec2用戶,我仍在試驗。而且,我從來沒有運用過RVM。

+0

'我正在使用ruby 1.9.3p0(2011-10-30)[x86_64-linux]''/ home/ec2-user/.gem/ruby​​/1.9.1 /'該應用程序要使用1.9。 1個寶石似乎,你確定你在1.9.3上運行? – Vikko 2012-04-17 14:37:12

+0

我引用了'ruby -v'的結果。我怎樣才能讓寶石成爲與紅寶石本身相同的版本。 – Baruch 2012-04-18 12:05:28

回答

10

我在Amazon EC2實例上遇到了與Rails 3.2.3和Ruby 1.9.3p0相同的問題,其中Ruby已安裝ruby19 yum包。在我的情況下,問題似乎是我使用gem命令手動安裝了bigdecimal gem,而不是使用Bundler。要解決這個問題,我手動卸載寶石,增加了行

寶石「的BigDecimal」

我的應用程序的Gemfile中,並重新運行安裝包。這重新安裝了寶石,然後我的應用程序能夠成功加載它。

即使我正在運行Ruby 1.9.3p0,我的gem也安裝在〜/ .gem/ruby​​/1.9.1 /中。這似乎不成問題。

+0

我必須爲'minitest-spec-rails'做同樣的事情。現在我正在運行。 – Baruch 2012-04-23 06:46:34