【问题标题】:Difficulty with activesupport when attempting to deploy尝试部署时难以获得主动支持
【发布时间】:2012-04-28 20:03:29
【问题描述】:

我有一个 Rails 应用程序,我正在尝试将其部署到互联网上。我已经在 Amazon EC2 云上设置了一个服务器,我知道它可以工作,因为我已经在同一台机器上部署了另一个站点。

当我尝试通过“rails 控制台”或运行“rake db:seed”或只是尝试浏览应用程序时运行这个新应用程序时,rails 崩溃说它找不到 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 作为服务器。

有没有我遗漏的配置步骤或类似的东西?

附:我知道我不应该使用 ec2-user,我仍在尝试。而且,我对 RVM 的运气一直不太好。

【问题讨论】:

  • I'm using ruby 1.9.3p0 (2011-10-30) [x86_64-linux] /home/ec2-user/.gem/ruby/1.9.1/ 该应用似乎想使用 1.9.1 gems,你确定你在 1.9.3 上运行吗?
  • 我引用了ruby -v的结果。我怎样才能让宝石与红宝石本身的版本相同。

标签: ruby-on-rails-3 amazon-ec2 activesupport


【解决方案1】:

我在我的 Amazon EC2 实例上使用 Rails 3.2.3 和 Ruby 1.9.3p0 时遇到了同样的问题,其中 Ruby 已与 ruby​​19 yum 包一起安装。就我而言,问题似乎是我使用 gem 命令而不是使用 Bundler 手动安装了 bigdecimal gem。为了解决这个问题,我手动卸载了 gem,添加了行

gem 'bigdecimal'

到我的应用程序的 Gemfile,然后重新运行捆绑安装。这重新安装了 gem,然后我的应用程序能够成功加载它。

即使我运行的是 Ruby 1.9.3p0,我的 gem 也安装在 ~/.gem/ruby/1.9.1/ 中。这似乎不是问题。

【讨论】:

  • 我必须为minitest-spec-rails 做同样的事情。现在我已经开始运行了。
猜你喜欢
  • 2015-07-31
  • 1970-01-01
  • 2019-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-15
  • 2021-02-06
  • 2017-03-27
相关资源
最近更新 更多