У меня есть следующие аргументы командной строки для программы. Аргумент proc является обязательным. Аргумент chgval является необязательным, а аргумент inputfile является необязательным.
. / Test.sh -proc mode1 -chval a -inputfile b.csv
Мне нужно изменить указанную ниже функцию, чтобы в аргументах командной строки присутствовал один из необязательных аргументов вместе с обязательным аргументом proc. Если у меня есть два необязательных аргумента chval, входной файл в командной строке вместе с обязательным аргументом proc, который он сейчас разрешает. Я не хочу, чтобы это произошло, должно появиться сообщение об ошибке.
Перечислены действительные значения ниже, а остальные должны быть ошибки
. / Test.sh -proc mode1 -chval a
. / Test.sh -proc mode1 -inputfile b.csv
. / Test.sh -proc mode1
public static Options usage() {
Option proc = OptionBuilder.withArgName("proc")
.hasArg()
.isRequired()
.withDescription("Process Mode for testing:")
.create("proc");
Option chgval = OptionBuilder.withArgName("chgval")
.hasArg()
.withDescription("chg eeds to be Processed")
.create("chgval");
Option inputFile = OptionBuilder.withArgName("inputfile")
.hasArg()
.withDescription("Name of the input file")
.create("inputfile");
Options options = new Options();
options.addOption(proc);
options.addOption(chgval);
options.addOption(inputFile);
return options;
}
Что нужно изменить?