in extensions-core/core/runtime/src/main/java/org/apache/camel/quarkus/main/CamelMain.java [176:211]
public void parseArguments(String[] arguments) {
LinkedList<String> args = new LinkedList<>(Arrays.asList(arguments));
List<String> unknownArgs = new ArrayList<>();
boolean valid = true;
while (!args.isEmpty()) {
initOptions();
String arg = args.removeFirst();
boolean handled = false;
for (Option option : options) {
if (option.processOption(arg, args)) {
handled = true;
break;
}
}
if (!handled && !failureRemedy.equals(FailureRemedy.ignore)) {
if (arg.length() >= 100) {
// For long arguments, clean up formatting for console output
String truncatedArg = String.format("%s...", StringHelper.limitLength(arg, 97));
unknownArgs.add(truncatedArg);
} else {
unknownArgs.add(arg);
}
valid = false;
}
}
if (!valid) {
System.out.println("Unknown option: " + String.join(" ", unknownArgs));
System.out.println();
showOptions();
if (failureRemedy.equals(FailureRemedy.fail)) {
completed();
throw new RuntimeException("CamelMain encountered unknown arguments");
}
}
}