gem install忽略版本号有字母的宝石

时间:2015-12-22 08:54:49

标签: ruby gem rubygems

在当前目录中,我有2个内置宝石: hello_gem-0.1.0.gem
hello_gem-0.1.1b.gem

这些文件是使用命令构建的

  

gem build hello_gem.gemspec

当我跑

  

gem install --explain hello_gem

打印

要安装的宝石:   hello_gem-0.1.0

为什么忽略hello_gem-0.1.1b.gem? 如果不支持版本号中的字母,为什么构建过程允许它们?

来源位于https://github.com/rfqu/hello_gem

1 个答案:

答案 0 :(得分:1)

我认为你在问题上有一个拼写错误:

▶ Gem::Version.new('0.1.0') > Gem::Version.new('0.1.1b')
#⇒ false
▶ Gem::Version.new('0.1.0') > Gem::Version.new('0.1.0b')
#⇒ true

gem install0.1.0b视为“少于”0.1.0,但0.1.1b大于0.1.0。无论如何,您始终可以使用以下命令安装显式版本:

gem install hello_gem -v '0.1.1b'

或者更明确地说:

gem install --local ./hello_gem-0.1.1b.gem

由于你发布的回复链接是空的,我无法更准确。