在尝试启动一些旧版本的开源 Rails 项目时,遇到了一个多云的错误消息:
“无法激活 activesupport (>= 2.3.2, runtime),已经激活了 activesupport-2.1.2”
这是什么意思?我的盒子上安装了任一版本的 rails 和 activesupport。
我很困惑...
在尝试启动一些旧版本的开源 Rails 项目时,遇到了一个多云的错误消息:
“无法激活 activesupport (>= 2.3.2, runtime),已经激活了 activesupport-2.1.2”
这是什么意思?我的盒子上安装了任一版本的 rails 和 activesupport。
我很困惑...
通常,在 Rails 尝试加载 2.3.2 之前,gem 或插件会加载 2.1.2。弄清楚它的最佳方法可能是一次注释掉 environment.rb 中的每个 gem 需求,然后看看会发生什么。
如果您不需要旧版本的 gem,最简单的启动和运行方法是删除它。
gem uninstall activesupport
删除旧版本。
出现该错误时,Rails 的 Active Support 无法正常工作,因为在您的计算机上安装了 Active Support Gem 2.1.2 版本,而项目需要该 gem 的最新版本 (2.3.2)。
恕我直言,我认为你必须升级 gem,因为很多时候我解决了在终端上输入这个问题:
宝石安装 gem_name
其中 gem_name 是您要安装的 gem 的名称。Ruby 将删除旧版本并安装新版本。从http://rubyforge.org/frs/?group_id=570下载 activesupport-2.3.2.gem 并将其放在您的项目目录中并执行命令。
您可以在这里找到其他宝石:http ://rubygems.org/
您是否安装了最近的活动支持 gem?
我也遇到了同样的错误,但后来我更新了 Rails 并下载了所有依赖项,问题得到了解决。
查看与错误消息关联的跟踪。我最近遇到了这个问题,其中有一个脚本/进程/收割机实例正在由 Capistrano 运行并预加载旧版本。在跟踪中,它显示了试图加载旧版本的文件。