我需要创业板中的私有创业板,而gemspec依赖项不能包含git库。
所以我用geminabox盯着我的私人服务器,并在我的and文件中添加了源代码。
当我捆绑安装或安装名为"core“的创业板时,就会从rubygems而不是我的存储库中安装gem。
如何在宝石规范中指定自己的宝石?
发布于 2013-10-19 23:30:19
最后,如果他们发布了一个比您更好的版本,而您需要对其进行更新,那么bundle将得到他们的新版本,所以要非常小心。
更改Gemfile中源行的顺序,优先级按相反顺序排列:
source 'https://rubygems.org'
source 'http://yourgeminaboxhost/gems'不过,请确保您使用的版本规范将解析为您发布的gem版本:
gem 'core', '0.0.1' # If both gems have that version, it will get the one
# in the last sourced gem server
gem 'core', '~> 0.0.1' # This will get the greatest version greater than 0.0.1 and
# lower than 0.1.0 in any of the sources so be careful
# because the one in rubygems is 0.0.6 > 0.0.1另一种选择是将版本号增加到大于他们的版本号,并在您的gem文件中指定它,假设您将gem发布为1.0.0:
gem 'core', '~> 1.0.0' # This will get your releases until they start to
# release a version greater than 1.0.0最后的办法是更改名称,可能是名称空间,因为如果有人在Gemfile中发布了更好的版本,符合您的版本规范,那么从rubygems.org获得版本总是有风险的。
发布于 2019-01-28 09:38:20
聚会晚了,但是对于任何发现这个问题的人来说,目前的答案是在你的环境中添加一个私有的创业板源代码。
gem sources --add http://localhost:9292
更多信息可以在这里找到:https://guides.rubygems.org/run-your-own-gem-server/
https://stackoverflow.com/questions/19464882
复制相似问题