【问题标题】:can't activate activesupport (>= 2.3.2, runtime), already activated activesupport-2.1.2. what does it mean?无法激活 activesupport (>= 2.3.2, runtime),已经激活了 activesupport-2.1.2。这是什么意思?
【发布时间】:2009-07-29 10:56:53
【问题描述】:

在尝试启动某个开源 Rails 项目的旧版本时,遇到了一个模糊的错误消息:

“无法激活activesupport (>= 2.3.2, runtime),已经激活了activesupport-2.1.2”

这是什么意思?我的盒子上安装了 rails 和 activesupport 的任何一个版本。

我很困惑……

【问题讨论】:

    标签: ruby-on-rails activesupport


    【解决方案1】:

    一般来说,gem 或插件会在 Rails 尝试加载 2.3.2 之前加载 2.1.2。解决这个问题的最佳方法可能是注释掉 environment.rb 中的每个 gem 需求,一次一个,看看会发生什么。

    【讨论】:

    • 遇到了同样的问题,只是版本号不同。就我而言,我不得不降级我的 activemerchant gem 版本。
    【解决方案2】:

    如果您不需要旧版本的 gem,启动和运行的最简单方法是删除它。

    gem uninstall activesupport
    

    删除旧版本。

    【讨论】:

    • 升级到 Fedora 26 后,我的工作就像一个魅力。我还必须 dnf install compat-readline6 才能获得 libreadline.so.6
    【解决方案3】:

    您是否安装了最近的活动支持 gem?

    【讨论】:

      【解决方案4】:

      查看与错误消息关联的跟踪。我最近遇到了这个问题,其中有一个由 Capistrano 运行并预加载旧版本的脚本/进程/收割机实例。在跟踪中,它显示了试图加载旧版本的文件。

      【讨论】:

        【解决方案5】:

        由于该错误,Rails 的 Active Support 无法正常工作,因为在您的机器上安装了 2.1.2 版本的 Active Support Gem,而项目需要该 gem 的最新版本 (2.3.2)。

        恕我直言,我认为你必须升级 gem,因为很多次我都解决了在终端上输入这个问题:

        gem 安装 gem_name

        其中 gem_name 是您要安装的 gem 的名称。 Ruby 将删除旧版本并安装新版本。 从http://rubyforge.org/frs/?group_id=570 下载 activesupport-2.3.2.gem 并将其放在你的项目目录下并执行命令。

        您可以在这里找到其他宝石:http://rubygems.org/

        【讨论】:

          【解决方案6】:

          我也遇到了同样的错误,但后来我更新了 Rails 并下载了所有依赖项,问题得到了解决。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2013-01-07
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-11-27
            • 2019-06-28
            • 2014-08-30
            相关资源
            最近更新 更多