So che questa domanda è stata posta molte volte qui e altrove prima mentre sto cercando la risposta. Tuttavia, mi imbarazza ancora il motivo per cui la libreria del parser della riga di comando non fornisce questo scenario di utilizzo comune, dove ho un gruppo di sottocomandi, ogni sottocomando ha il proprio insieme di argomenti obbligatori e facoltativi. Costrutto simile può essere trovato in git/svn, anche se, nel loro caso, il comando sottocomando è un programma standalone se non sbaglio.parser della riga di comando e mancanza di sottocomando e raggruppamento?
In sintesi, quello che sto cercando è un modo semplice per:
top_command subcmd_A [ command A's options ....]
top_command subcmd_B [ command B's options ....]
...
Nel mondo di Java, due biblioteca spesso citati sono Apache Comando CLI e JSAP. Non vedo che nessuno di loro ha questo in mente - anche se probabilmente si potrebbe modificare e personalizzare molto per adattarsi ... ma il flusso di base di definire un'opzione, registrarsi ... quindi alla fine, analizzarli tutti non lo fa Considerato il caso con diversi sottocomandi, la convalida e il parser devono comportarsi in modo diverso.
Forse la saggezza comune qui è che questo è troppo specifico per l'applicazione e dovrebbe essere lasciato all'applicazione stessa da gestire. Un modo in cui posso pensare è definire una classe BaseCommand, e ogni sottocomando lo estende e si registra da solo ... come modo per suddividerlo in una gestione facile. Se qualche framework maturo può farlo, apprezzerei qualsiasi puntatore qui.
Potrei sbagliarmi sulla mia comprensione dell'attuale capacità del parser, tuttavia, qualsiasi intuizione è molto apprezzata.
Oliver
Non so come mi sia sfuggita questa libreria, ma sembra interessante. grazie. – Oliver