Eskiden Apache Commons Cli 1.2 ile çalıştım. Bu soru için alakasız olan nedenlerden ötürü, ayrıştırıcının bilinmeyenler (Seçenekler-Nesnesine eklenmemişse) argümanları görmezden gelmesini istedim.Apache Commons CLI 1.3.1: Bilinmeyen Argümanlar nasıl yok sayılır?
Örnek (yalancı kod): Can Apache Commons CLI options parser ignore unknown command-line options?
Bu 1.2 üzerinde benim için iyi çalıştı ve o da 1.3.1 üzerinde çalışıyor:
Options specialOptions;
specialOptions.addOption(null, "help", false, "shows help");
specialOptions.addOption(null, "version", false, "show version");
CommandLineParser parser = new DefaultParser();
CommandLine cmd = parser.parse(options, args); //no third argument, since i dont want the program to stop parsing.
// run program with args: --help --unknown --version
// program shall parse --help AND --version, but ignore --unknown
Bu Pascal Schäfer tarafından çözüm kullandı. Ama onun kullanımdan kaldırılmış. Kullandığım çözümleyici,
DefaultParser
ile değiştirildi. İşlevleri araştırdım ama
processOptions
gibi bir yöntem yok.
Daha sonraki sürümlerde silinmeyecek kodları kullanmak istiyorum. Bu sorunun nasıl çözüleceği konusunda bir fikri olan var mı?
Sorulan soru, eklentinin eski bir sürümü için, ve hatta buna atıfta bulunuyor, bu nasıl bir cumhuriyetçi? – leimooo
Ve sorumu sorgulamıyor. – leimooo
Yeniden açılmak için oy veriyorum çünkü soru açıkça sorunu çözmek için onaylanmamış bir yöntem istiyor. –