Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Consider moving jar to Maven or eliminating entirely

Aperta
#580 2 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
12/100
Tipo di issue
Refactoring
Chiarezza
Da chiarire
Stato di attività
Tranquilla
Stack tecnologico
java, ruby
Ambito
build-system

Direzione di ricerca

Start by reading the Java sources that produce lib/warbler_jar.jar: WarblerJar and WarblerJarService (used by Warbler as a JRuby extension), and JarMain and WarMain (bootstrap entry points for generated jars and war files). The issue proposes several alternatives (Maven modules, moving code into JRuby, or rewriting parts in Ruby), so a contributor would first need a maintainer decision on which direction to take. Done would mean an agreed plan, not a patch.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

We currently build lib/warbler_jar.jar as part of this gem, even though most of it is not necessary for the execution of the gem.

Two classes in this jar are used by warbler as a JRuby extension to build the resulting archive: WarblerJar and WarblerJarService. None of this code really needs to be written in Java (it's largely just zip file manipulation and creation).

The remaining two sources built and installed in this jar are provided to bootstrap applications built by warbler (not to run warbler itself):

  • JarMain: provides a "main" entry point for standalone executable jars.
  • WarMain: supports the embedded web application server used for executable war files`.

These two classes could be moved to Maven modules and versioned from there. They could also be eliminated altogether:

  • The JarMain class could be re-integrated back into JRuby, since it provides functionality the existing JRuby JarBootstrapMain does not. Building an executable jar would then just involve repackaging JRuby with appropriate layout and configuration to run the user's app.
  • The WarMain class could be generated, or written in Ruby with a JarMain bootstrap to run the ruby and then re-dispatch to the web server's main.

Eliminating the extension would get the gem back to a pure-Ruby construct and allow it to be run from any compatible Ruby implementation.

Transplanting or eliminating the "mains" would make it possible to build the warbler gem with any compatible Ruby implementation.

Lingua principale
Ruby
Stelle
901
Fork
206
Merge medio
1g 10h
PR unite (30g)
3

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di jruby/warbler

Tutte le issue di jruby/warbler

Issue simili

Altre issue su Ruby

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.