Domanda

Così hai creato una libreria ruby.

Come si fa a creare e pubblicare il tuo rubygem?E che cosa i trabocchetti e i trucchi ci sono di pertinenza creazione e pubblicazione di rubygems?

È stato utile?

Soluzione

Ci sono diversi strumenti per aiutarvi a costruire il vostro gemme. hoe e newgem sono i più noti, e hanno un sacco di buone qualità.Tuttavia, zappa aggiunge come una dipendenza del gioiello, e newgem, è diventato un grande strumento, che trovo ingombrante, quando ho voglia di creare e distribuire un gioiello rapidamente.

Il mio strumento preferito è Mr Bones da Tim Pease.E ' leggero, ricco di funzioni, e non aggiungere dipendenze al progetto.Per creare un progetto con esso, basta eseguire bones <my_project_name> sulla riga di comando, con scheletro è costruito per voi, con un lib directory per il tuo codice, un bin directory per i vostri strumenti, e un test di directory.La configurazione è un Rakefile, ed è chiaro e conciso.Ecco la configurazione per un progetto che ho fatto un paio di mesi fa:

load 'tasks/setup.rb'

ensure_in_path 'lib'
require 'friend-feed'

task :default => 'test'

PROJ.name = 'friend-feed'
PROJ.authors = 'Clinton R. Nixon'
PROJ.email = 'crnixon@gmail.com'
PROJ.url = 'friend-feed.rubyforge.org'
PROJ.rubyforge_name = 'friend-feed'
PROJ.dependencies = ['json']
PROJ.version = FriendFeed::VERSION
PROJ.exclude = %w(.git pkg)

Mr Bones è il set standard di funzioni che ci si aspetta:si può utilizzare per il pacchetto di gemme e tarfiles della libreria, così come il rilascio su RubyForge e la distribuzione della documentazione.La sua caratteristica killer, però, è la sua capacità di congelare il suo scheletro nella vostra home directory.Quando si esegue bones --freeze, una cartella di nome .mrbones è copiato nella vostra home directory.È possibile modificare il file per fare uno scheletro per le gemme che funziona il modo in cui si lavora, e da allora, quando si esegue ossa per creare una nuova gemma, userà il personale gemma scheletro.È possibile sbloccare il Signor Ossa eseguendo bones --unfreeze e il tuo scheletro verrà eseguito il backup, e lo scheletro predefinito verrà utilizzato di nuovo.

(Nota della redazione:Ho scritto un post su questo blog alcuni mesi fa, e la maggior parte di questo è copiato da esso.)

Altri suggerimenti

Mi raccomando github come un punto di partenza, soprattutto per i progetti open source.

E provare una ricerca su google e...Primo risultato della ricerca per me...

Si potrebbe anche voler checkout la Zappa gemma, che è in grado di automatizzare la gemma processo di creazione.

Vedere: http://nubyonrails.com/articles/tutorial-publishing-rubygems-with-hoe

Ho scritto un tutorial proprio su questo, e l'ho scritto come mi è stato di apprendimento.È più concentrato sul gioco avevo scritto di una biblioteca.Inoltre, si presuppone che si desidera costruire la gemma via rastrello, piuttosto che sul proprio:

  • Parte 1 su come creare il gioiello.
  • Parte 2 come eseguire binari installati da una gemma, e ottenere risorse.

zappa non è più aggiunge come una dipendenza, come off rubygems 1.2.Il suo rastrello attività sono incentrate sulla distribuzione di rubygem a rubyforge.Se si desidera solo per servire la gemma da github penso che c'è qualche nuova zappa-esque task rake strumenti per aiutare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top