Ruby gem 的名字真的让我失望。例如,如果安装一个名为jade 的gem,则在某些系统上将包装脚本放置在/usr/bin/jade1.9,而在其他系统上将包装脚本放置在/usr/bin/jade。我很好奇是否有人建议我如何在脚本中使用翡翠,而无需编写一些猜测正确宝石名称的骇人听闻的代码。命名还使得为不太精明的用户编写文档变得困难。有没有一种简单的方法可以在所有系统上使用相同的名称安装 gem?
详细说明一下:
gem install jade #jade is something I made up
ls /usr/bin/|grep "jade"
> jade1.9
当我想执行时:
jade --dosomething
我实际上必须运行
jade1.9 --dosomething
我注意到在 /usr/bin/rake 和 /usr/bin/rake1.9 都安装了某些 gem,例如 rake,它们都不是符号链接,而且两个文件都具有相同的 md5sum。
我试图理解为什么 gems 会在某些系统上附加 ruby 版本,以及如何在没有尾随版本号的情况下进行安装。
一些安装可执行文件的 gem 示例列表:
ls /usr/bin/|grep "1.9"
amalgalite-pack1.9
bundle1.9
crate1.9
erb1.9
gem1.9
irb1.9
minitar1.9
rake1.9
rdoc1.9
ri1.9
rlock1.9
ruby1.9
rubyscript2exe1.9
testrb1.9