ruby-on-rails – 使用Rails 2.3.5绕过机架版本错误

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 使用Rails 2.3.5绕过机架版本错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前正在Dreamhost上试图运行Rails 2.3.5应用程序.

这是情况,Dreamhost的服务器安装了Rails 2.2.2.当然,我无法更新共享主机的rails版本,所以我在供应商中冻结了我的Rails. Rails 2.3.5需要机架v1.0.1 gem. Dreamhost使用机架v1.0.0 gem.所以当我尝试定义:

config.gem "rack",:version => "1.0.1"

我明白了:

can't activate rack (~> 1.0.1,runtime) for [],already activated rack-1.0.0 for []

所以我真正需要做的是绕过我的应用程序使用1.0.1的请求,并使用Dreamhost的1.0.0.有谁知道如何配置这个?它甚至可能吗?谢谢您的帮助.

解决方法

您几乎总是希望将应用程序所依赖的gem解压缩到vendor文件夹中.您可以使用此rake命令执行此操作:
rake gems:unpack:dependencies

这将在应用程序的根文件夹下创建一个文件夹vendor / gems,并将使用config.gem命令声明的所有gem解压缩到其中.

这不仅可以解决您的机架版本不匹配的问题,而且还可以确保您在生产中使用与开发中使用的完全相同的宝石版本,这可以防止将来出现许多潜在的麻烦.

猜你在找的Ruby相关文章