Welche Schritte sind erforderlich, um ein eigenes Rubygem zu erstellen und zu veröffentlichen?

StackOverflow https://stackoverflow.com/questions/120191

  •  02-07-2019
  •  | 
  •  

Frage

Sie haben also eine Ruby-Bibliothek erstellt.

Wie erstellen und veröffentlichen Sie Ihr Rubygem?Und welche häufigen Fallstricke und Fallstricke gibt es beim Erstellen und Veröffentlichen von Rubygems?

War es hilfreich?

Lösung

Es gibt verschiedene Tools, mit denen Sie Ihre eigenen Edelsteine ​​​​bauen können. Hacke Und newgem sind die bekanntesten und haben viele gute Eigenschaften.Allerdings fügt sich hoe als Abhängigkeit zu Ihrem Gem hinzu, und newgem ist zu einem sehr großen Tool geworden, das ich unhandlich finde, wenn ich schnell ein Gem erstellen und bereitstellen möchte.

Mein Lieblingswerkzeug ist Herr Bones von Tim Pease.Es ist leichtgewichtig, funktionsreich und fügt Ihrem Projekt keine Abhängigkeiten hinzu.Um damit ein Projekt zu erstellen, führen Sie es einfach aus bones <my_project_name> auf der Befehlszeile, und ein Skelett wird für Sie erstellt, komplett mit a lib Verzeichnis für Ihren Code, a bin Verzeichnis für Ihre Tools und ein Testverzeichnis.Die Konfiguration ist in a Rakefile, und es ist klar und prägnant.Hier ist die Konfiguration für ein Projekt, das ich vor ein paar Monaten durchgeführt habe:

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 verfügt über die Standardfunktionen, die Sie erwarten:Sie können es verwenden, um Gems und Tarfiles Ihrer Bibliothek zu verpacken, es auf RubyForge zu veröffentlichen und dort Ihre Dokumentation bereitzustellen.Sein Killerfeature ist jedoch die Fähigkeit, sein Skelett in Ihrem Home-Verzeichnis einzufrieren.Wenn du rennst bones --freeze, ein Verzeichnis mit dem Namen .mrbones wird in Ihr Home-Verzeichnis kopiert.Sie können die darin enthaltenen Dateien bearbeiten, um ein Skelett für Ihre Edelsteine ​​zu erstellen, das so funktioniert, wie Sie arbeiten. Wenn Sie von da an Bones ausführen, um einen neuen Edelstein zu erstellen, wird Ihr persönliches Edelsteinskelett verwendet.Sie können Mr. Bones durch Laufen wieder auftauen bones --unfreeze und Ihr Skelett wird gesichert und das Standard-Skelett wird wieder verwendet.

(Anmerkung der Redaktion:Ich habe vor einigen Monaten einen Blog-Beitrag darüber geschrieben, und das meiste davon ist daraus übernommen.)

Andere Tipps

Ich empfehle Github als ein Anfang, vor allem für Open-Source-Projekte.

Und versuchen, eine Google-Suche als auch ... Allererste Suchergebnis für mich ...

Sie können auch die Hoe gem zur Kasse, die den Edelstein Erstellungsprozess automatisieren können.

Siehe auch: http://nubyonrails.com/articles/tutorial-publishing -rubygems-mit-hoe

Ich habe tatsächlich ein Tutorial zu genau diesem Thema geschrieben, und zwar während ich lernte.Es konzentriert sich mehr auf das Spiel, das ich geschrieben habe, als auf eine Bibliothek.Außerdem wird davon ausgegangen, dass Sie den Edelstein eher per Rechen als auf eigene Faust bauen möchten:

  • Teil 1 wie man den Edelstein herstellt.
  • Teil 2 Informationen zum Ausführen der von Ihrem Gem installierten Binärdateien und zum Zugriff auf Ressourcen.

Hacke kein fügt mehr selbst als eine Abhängigkeit wie aus rubygems 1.2. Seine Rake Aufgaben werden auf der Entfaltung des rubygem zu RubyForge konzentriert. Wenn Sie nur die Perle von Github dienen wollen denke ich, gibt es einige neue Hacke-esque Rake Aufgabe Tools zu helfen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top