0

我在 Capistrano 部署期间出现此错误消息。这对我来说意味着安装 Rails 有什么问题吗?Rails 目前没有安装在服务器端,但它在我的 Gemfile(和我的 Gemfile.lock)中,所以我假设它应该bundle install在此行之前执行的命令期间安装。

给出错误的实际命令是:

bundle exec rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile

我想问题只是在捆绑安装期间没有安装 Rails。我错过了什么吗?

谢谢!

更新 1:bundle install Rails 似乎通过命令正确安装。如果我查看目录.../shared/bundle/ruby/1.9.1/gems,我可以在其中看到 action mailer。

更新 2:在本地运行命令rake assets:precompile实际上也失败了,所以这与 Capistrano 没有任何关系。现在我只需要弄清楚为什么该config对象对动作邮件一无所知?

更新 3:在路上炙手可热。看起来我安装的 actionmailer 版本是 0.6.1(?!),同时我所有的 Rails 东西都在 3.2.9 上。bundle update拒绝更新此版本之后的 actionmailer。我将移除我所有的宝石并重新开始。

更新 4:删除了我的整个 gemset 使用rvm gemset empty. 然后尝试再次运行 bundle,并再次尝试获取 actionmailer 0.6.1。我认为某些东西被捆绑器或其他东西搞砸了......

4

2 回答 2

1

问题最终是我在我的 Gemfile 中删除了对特定版本的 Rails 的依赖。我刚gem "rails"进去 这似乎完全搞砸了依赖关系计算,因为它获得了超旧版本的 action mailer,而不是从所有 gem 中获得一致的版本。猜猜不指定确切的 Rails 版本是个坏主意。哎呀!

于 2012-11-18T09:11:41.477 回答
1

@aardvarkk,

感谢您发布此问题,我在安装 Rails 4.0.0 时遇到了同样的错误,该错误阻止我运行我的 rails 服务器

这是在我尝试遵循 RoR 的 Hartl 教程时。

我添加gem "rails", '4.0.0'到我的 gem 文件中,现在我可以运行我的 rails 服务器了。

谢谢

于 2013-08-02T18:50:57.410 回答