Ich wollte diese Art von Verhalten vor, und stieß nie auf eine Möglichkeit, dies mit einer bereits bereitgestellten Methode zu tun. Das heißt nicht, dass es nicht existiert. Eine Art lahmer Weise ist den Code selbst, wie hinzuzufügen:
private void checkSuitableValue(CommandLine line) {
if(line.hasOption("a")) {
String value = line.getOptionValue("a");
if("foo".equals(value)) {
println("OK");
} else if("bar".equals(value)) {
println("OK");
} else {
println(value + "is not a valid value for -a");
System.exit(1);
}
}
}
Natürlich wäre es schöne Wege, dies zu tun, als die lange, wenn/sonst, möglicherweise mit einem enum
, aber das sollte alles sein, das Sie‘ d brauchen. Auch das habe ich nicht zusammengestellt, aber ich denke, es sollte funktionieren.
In diesem Beispiel wird auch der Schalter "-a" nicht obligatorisch, da dies in der Frage nicht angegeben wurde.
Ist das immer noch wahr? – ksl