我有一个宝石,我是其中一个所有者/作者(hyperloop
)依赖于另一个宝石(opal-rails
)依赖于另一个宝石(opal-jquery
)。
所有宝石都依赖于宝石opal
。问题是当前发布的opal-query
版本被锁定到较早版本的opal
gem。
master上的opal-jquery
版本没问题。无论出于何种原因,作者都没有推过红宝石,所以我必须解决这个问题。
解决方法是我必须说
gem 'hyperloop'
gem "opal-jquery", git: "https://github.com/opal/opal-jquery.git", branch: "master"
在应用程序Gemfile中。
我希望有人可以提供一个可以嵌入hyperloop
gemspec的解决方法,以便解决问题。
我想如果我添加了
gem "opal-jquery", git: "https://github.com/opal/opal-jquery.git", branch: "master"
到hyperloop
Gemfile这会照顾它,但显然不是。
答案 0 :(得分:4)
管理依赖项的依赖关系并不是一种真正的方法。这里有2个选项:
1)使用较旧版本的蛋白石 2)克隆opal-jquery gem并修改它的Gemfile,指向你想要它使用的蛋白石版本,然后,在你的Gemfile中,指出opal-jquery gem从你克隆版本的repo中拉出来
如果您决定升级到较新版本的opal-jquery,如果您选择使用第二条路线,那么这些都不是非常理想的并且您会遇到问题