Đối với một CLI, tôi có một yêu cầu để chuyển vào một mảng ints làm đầu vào cho một tùy chọn cụ thể.Apache Commons CLI: Lấy danh sách các giá trị cho một tùy chọn
Ví dụ - Lệnh dưới đây sẽ lấy một mảng customerIds và thực hiện một số thao tác.
myCommand -c 123 124 125
tôi đã thực hiện CLI bằng Apache commons CLI, và tôi đang sử dụng getOptionValues ("c") để lấy mảng này.
Vấn đề là, điều này chỉ trả lại phần tử đầu tiên trong mảng, tức là [123], trong khi tôi dự kiến nó sẽ trả về [123, 124, 125].
Một phiên bản đặc của mã của tôi,
CommandLine cmd;
CommandLineParser parser = new BasicParser();
cmd = parser.parse(options, args);
if (cmd.hasOption("c")){
String[] customerIdArray = cmd.getOptionValues("c");
// Code to parse data into int
}
Ai đó có thể giúp tôi xác định vấn đề ở đây?
Và nếu số lượng giá trị đối số tối đa không xác định? Có thể có cú pháp với khung hình \t không? – Zangdak