两颗gem共享相同的要求?
我打电话的时候:
require 'retryable'
这两个gem发生冲突:
- https://github.com/robertsosinski/retryable
- https://github.com/carlo/retryable
因为他们都有一个’可重试的’文件,他们要求用户要求。 我对使用第一个gem感兴趣,但这并不总是发生。
此代码作为我自己的gem的一部分执行,并且必须在所有用户之间可靠。
有没有办法特别要求gem(因为gem名称当然不同)?
如何解决此命名冲突?
编辑:澄清一下,这是官方的回购和gem名称实际上是不同的(“retryable-rb”和“carlo-retryable”),但他们都要求他们的用户要求lib / retryable.rb文件require 'retryable'
您可以使用gem
方法显式激活特定的gem
。
在这种情况下,您需要retryable-rb
gem,而不是任何其他可能具有retryable.rb
文件的gem:
gem 'retryable-rb' # activates the gem in question # and adds its lib dir to load path require 'retryable' # loads retryable.rb from the retryable-rb gem, as it # is now on the load path