gpt4 book ai didi

ruby-on-rails - 如何同时使用不同版本的 gem

转载 作者:行者123 更新时间:2023-12-03 12:54:52 25 4
gpt4 key购买 nike

我可以在一个应用程序中使用两个版本的 gem 吗?

我正在尝试使用两个 Rails 插件一起工作:

  • Pengwynn's LinkedIn对于 LinkedIn API 调用,依赖于 OAuth (~> 0.3.5)
  • OmniAuth 用于用户通过多个知名网站登录,依赖于 OAuth 0.4.0

  • 当我在 Rails 中尝试某些东西时,我收到以下错误消息:
    $ rails server
    c:/Ruby187/lib/ruby/gems/1.8/gems/bundler-1.0.7/lib/bundler/resolver.rb:129:in `resolve': Bundler could not find compatible versions for gem "oauth": (Bundler::VersionConflict)
    In snapshot (Gemfile.lock):
    oauth (0.4.4)

    In Gemfile:
    linkedin depends on
    oauth (~> 0.3.5)

    Running `bundle update` will rebuild your snapshot from scratch, using only
    the gems in your Gemfile, which may resolve the conflict.

    尝试 bundle update卡住我的终端。

    可以同时使用两个插件吗?

    最佳答案

    使用单个 gem 的两个版本通常意味着:使用同一类的两个版本。

    不对这些 gem 进行修改是不可能的。您可以尝试将创建的类放在某个模块中,解决导入其他类的方法中的冲突,等等。总的来说,这不是一件容易的事,而且通常效果并不值得。

    在这种情况下,您应该做的是要求 gem 维护人员更新依赖项,或者尝试自己做。

    也许您可以将其中一个 gem 降级(使用旧版本)到依赖项相同的版本。

    关于ruby-on-rails - 如何同时使用不同版本的 gem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4333645/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com