Ruby:如何写一个gem?

我想为Ruby编写一个包,并将其作为一个gem。
什么是工具,步骤和陷阱?
有什么好的教程,屏幕录像等,这有助于你学习如何做到这一点?

Rubygems.org的指南是编写自己的gem的最佳资源之一。

如果你在你的应用中使用Bundler ,你可能想看看Ryan Bigg的使用Bundler开发RubyGem的指南, 以及使用Bundler 创buildgem的Railscast 。

如果您有兴趣使用工具来帮助您编写gem:

  • 珠宝商 – 创build和pipe理Rubygem项目的意见工具。 还有一个Gemcutter和珠宝商Railscast 。
  • 锄头 – 从seattlrb的家伙。
  • gem – 这增加了一堆有用的耙子任务。

一些教程/指南:

  • 创build你的第一个gem
  • 使用bundler和rvm构buildrubygem – 使用bundler和rvm创build一个gem
  • gem包装:最佳实践
  • rubygem食谱 – 介绍使用打包机和珠宝商创buildgem的指南
  • 如何构build一个ruby,并在gemcutter上进行托pipe – 使用echoe和gemcutter进行教程
  • 关于Gemspecs的真相 – 通过gemspecs和提示处理它们
  • 使用RubyGems打包 – 珠宝商快速入门指南
  • gem – 詹姆斯亚当 – 审查工具,帮助build立gem(锄头,newgem,回声,gemhub,珠宝商,gem这个)
  • 从命令行使用Gemcutter的Api
  • Bundle的新gem – 示例Rakefile – 用于部署和发布gem的有用的rakefile
  • 我们来写一个gem
  • 如何用Bundler构buildRuby Gem,testing驱动开发,Travis CI和Coveralls,哦,我的!

这是我通常创build和发布Gems的方式:

  1. 注册https://github.com
  2. 注册https://rubygems.org
  3. $ gem install ore rubygems-tasks rdoc rspec
  4. $ mine awesome_gem
  5. cd awesome_gem/并编辑README.rdocawesome_gem.gemspec ,在lib/awesome_gem/编写代码,并在specs/添加RSpectesting。
  6. 当您准备发布时,更新ChangeLog.rdoc文件,运行rake specrake rerdoc ,打开html/index.html并仔细检查是否有错别字。
  7. rake release
  8. (可选)向http://rubyflow.com提交新的真棒gem的链接和解释;

坐下来,沐浴你的第一个gem的荣耀。 🙂

你不需要开始编写一个gem,只需编写一些代码,编写一些testing,然后使用它,一旦你满意,就用gem来生成相关的Rakefile。

如果你坚持其他gem的方法(有一个lib目录,避免命名文件的方式可能与其他gem冲突,写一些testing,如果可以的话,有一个自述文件),但它不是必要的。

一旦你有一些你想分享的东西,把它放在Github上,并把它推到gemcutter 。

不要过度思考,不要使用锄头或其他矫枉过正的工具,玩得开心,别做任何我不会做的事情。