Wat is een edelsteen? – RubyGems Guides
On oktober 24, 2021 by adminOntdek het mysterie achter wat er in een RubyGem zit.
Structuur van een Gem
Elke gem heeft een naam, versie, en platform. Bijvoorbeeld, therake gem heeft een 0.8.7
versie (van mei,2009). Rake’s platform is ruby
, wat betekent dat het werkt op elk platform waar Rubyruns op draait.
Platforms zijn gebaseerd op de CPU architectuur, besturingssysteem type en soms de versie van het besturingssysteem. Voorbeelden zijn “x86-mingw32” of “java”. Het platform geeft aan dat de gem alleen werkt met een ruby die voor hetzelfde platform is gebouwd. RubyGems zal automatisch de juiste versie voor uw platform downloaden. Zie gem help platform
voor alle details.
Binnen gems bevinden zich de volgende componenten:
- Code (inclusief tests en ondersteunende utilities)
- Documentatie
- gemspec
Elke gem volgt dezelfde standaard structuur van code organisatie:
% tree freewillfreewill/├── bin/│ └── freewill├── lib/│ └── freewill.rb├── test/│ └── test_freewill.rb├── README├── Rakefile└── freewill.gemspec
Hier ziet u de belangrijkste componenten van een gem:
- De
lib
directory bevat de code voor de gem - De
test
ofspec
directory bevat tests, afhankelijk van welk testframework de ontwikkelaar gebruikt - Een gem heeft meestal een
Rakefile
, die door hetake programma gebruikt wordt om tests te automatiseren, code te genereren, en andere taken uit te voeren. - Deze gem bevat ook een uitvoerbaar bestand in de
bin
directory, die zal worden geladen in dePATH
van de gebruiker wanneer de gem is geïnstalleerd. - Documentatie is meestal opgenomen in de
README
en inline met de code.Wanneer u een gem installeert, wordt documentatie automatisch voor u gegenereerd.De meeste gems bevatten RDoc-documentatie, maar sommige gebruiken in plaats daarvan YARD-docs. - Het laatste stuk is de gemspec, die informatie bevat over de gem.De gem’s bestanden, test informatie, platform, versienummer en nog veel meer zijn hier allemaal te vinden, samen met de email en naam van de auteur.
Meer informatie over het gemspec bestand
Bouw uw eigen gem
De Gemspec
De gemspec specificeert de informatie over een gem zoals zijn naam, versie, beschrijving, auteurs en homepage.
Hier is een voorbeeld van een gemspec bestand. U kunt meer leren in hoe u agem maakt.
% cat freewill.gemspecGem::Specification.new do |s| s.name = 'freewill' s.version = '1.0.0' s.summary = "Freewill!" s.description = "I will choose Freewill!" s.authors = s.email = '[email protected]' s.homepage = 'http://example.com/freewill' s.files = end
Geef een antwoord