2010-02-03 5 views
158

Je voudrais écrire un paquet pour Ruby et le rendre disponible comme gemme.
Quels sont les outils, les étapes et les pièges?
Y a-t-il de bons tutoriels, screencasts, etc., qui vous ont aidé à apprendre à le faire?Ruby: Comment écrire une gemme?

Répondre

211

Rubygems.org's Guides est l'une des meilleures ressources pour écrire votre propre gemme.

Si vous utilisez Bundler dans votre application, vous pouvez consulter le guide de Ryan Bigg au Developing a RubyGem using Bundler et le Railscast on creating gems with Bundler.

Si vous êtes intéressé par des outils pour vous aider à écrire des pierres précieuses:

Quelques tutoriels/guides:

+3

'gem build' est fourni par RubyGems lui-même. Toute la gemme Gemcutter (et bientôt, RubyGems proprement dit) vous permet de pousser un RubyGem en utilisant l'API. http://gemcutter.org/pages/gem_docs http://gemcutter.org/pages/api_docs – qrush

+0

Merci, j'ai modifié la réponse. –

6

Vous n'avez pas besoin de commencer à écrire une gemme, écrivez simplement du code, écrivez quelques tests, utilisez-le comme vous voulez, et une fois que vous êtes satisfait, utilisez gem this pour générer le Rakefile approprié. Il est utile de conserver les approches utilisées par les autres gemmes (avoir un répertoire lib, éviter de nommer les fichiers d'une manière qui pourrait heurter d'autres gemmes, écrire des tests si possible, avoir un readme), mais ce n'est pas nécessaire. Une fois que vous avez quelque chose à partager, mettez-le sur github et poussez-le sur gemcutter. Ne pas trop penser, ne pas utiliser houe ou d'autres outils exagérés, amusez-vous, ne faites rien que je ne ferais pas.

6

Voici comment je crée habituellement et la libération Gems:

  1. Inscrivez-vous à https://github.com
  2. Inscrivez-vous à https://rubygems.org
  3. $ gem install ore rubygems-tasks rdoc rspec
  4. $ mine awesome_gem
  5. cd awesome_gem/ et modifier le README.rdoc et awesome_gem.gemspec , écrire le code lib/awesome_gem/ et ajouter des tests RSpec dans specs/.
  6. Lorsque vous êtes prêt à sortir, mettez à jour le fichier ChangeLog.rdoc, exécutez rake spec et rake rerdoc, ouvrez html/index.html et vérifiez les fautes de frappe.
  7. rake release
  8. (Facultatif) soumettre un lien et une explication de votre nouveau bijou génial à http://rubyflow.com

Asseyez-vous et se prélasser dans la gloire de votre première Gem. :)

Questions connexes