所以,我最近一直在写一堆ruby gems,我觉得有一点很方便就是在rdoc
为我的库生成文档中包含当前版本(在gemspec中指定) ,以及我的脚本使用的OptionParser
- 生成的--help
部分(我通过gem分发)。我可以通过任何方式让我的用户轻松找出他们当前使用的库/脚本版本。
有没有办法可以从我的lib/
或bin/
目录中的ruby文件中访问我在gemspec中指定的版本?这样,我就不必一次更新多个地方 - 就在我的gemspec中。
目前我手动生成我的gemspecs,我还没有跳过Rake列车。如果我不能直接做我想要的东西,只有rubygems给我的东西,rake或其他工具是否允许我这样做?
答案 0 :(得分:1)
没有办法,我不认为,因为Rubygems只是Ruby库的安装机制,它没有预定义的版本控制概念。
但是,可能的解决方法可能包括使用Gem.loaded_specs
查找已加载的宝石:
Gem.loaded_specs["mygemname"].version.to_s #=> "1.2.3"
答案 1 :(得分:0)
您可能需要查看newgem gem - 因为它会生成相应的目录布局以及gemspec文件(与GitHub兼容)。