2010-02-03 22 views
158

Me gustaría escribir un paquete para Ruby y ponerlo a disposición como una joya.
¿Cuáles son las herramientas, los pasos y las dificultades?
¿Hay buenos tutoriales, screencasts, etc. que te hayan ayudado a aprender cómo hacerlo?Ruby: ¿Cómo escribir una gema?

Respuesta

211

Rubygems.org's Guides es uno de los mejores recursos para escribir su propia joya.

Si está usando Bundler en su aplicación, es posible que desee consultar la guía de Ryan Bigg al Developing a RubyGem using Bundler y la Railscast on creating gems with Bundler.

Si usted está interesado en herramientas para ayudarle a escribir gemas:

Algunos tutoriales/guías:

+3

'gem build' es proporcionada por RubyGems. Toda la gema de Gemcutter (y pronto, RubyGems propiamente dicha) le permite hacer es empujar un RubyGem usando la API. http://gemcutter.org/pages/gem_docs http://gemcutter.org/pages/api_docs – qrush

+0

Gracias, he editado la respuesta. –

6

No necesita comenzar a escribir una gema, solo escriba un código, escriba algunas pruebas, utilícelo como quiera, y una vez que esté satisfecho con él, use gem this para generar el Rakefile correspondiente.

Te ayuda si te apegas a los enfoques que toman otras gemas (tener un directorio lib, evitar nombrar archivos de forma que pueda chocar con otras gemas, escribir algunas pruebas si puedes, tener un léame), pero no es necesario.

Una vez que tenga algo que quiera compartir, colóquelo en github y presiónelo en gemcutter.

No lo pienses más, no uses azada u otras herramientas de sobrecarga, diviértete, no hagas nada que yo no haría.

6

Esta es la forma en general creo y desprender piedras preciosas:

  1. Inscríbase para https://github.com
  2. Inscríbase para https://rubygems.org
  3. $ gem install ore rubygems-tasks rdoc rspec
  4. $ mine awesome_gem
  5. cd awesome_gem/ y editar README.rdoc y awesome_gem.gemspec , escriba el código en lib/awesome_gem/ y agregue las pruebas de RSpec en specs/.
  6. cuando esté listo para lanzar, actualice el archivo ChangeLog.rdoc, ejecute rake spec y rake rerdoc, abra html/index.html y verifique si hay algún error tipográfico.
  7. rake release
  8. (Opcional) envíe un enlace y una explicación de su nueva joya impresionante para http://rubyflow.com

Sentarse y disfrutar de la gloria de su primera gema. :)

Cuestiones relacionadas