in common/src/main/java/org/mvndaemon/mvnd/common/Environment.java [477:510]
String getCommandLineOption(Collection<String> args, boolean remove) {
final String[] prefixes = getPrefixes();
String value = null;
for (Iterator<String> it = args.iterator(); it.hasNext(); ) {
String arg = it.next();
if (Stream.of(prefixes).anyMatch(arg::startsWith)) {
if (remove) {
it.remove();
}
if (type == OptionType.VOID) {
value = "";
} else {
String opt = Stream.of(prefixes)
.filter(arg::startsWith)
.max(Comparator.comparing(String::length))
.get();
value = arg.substring(opt.length());
if (value.isEmpty()) {
if (it.hasNext()) {
value = it.next();
if (remove) {
it.remove();
}
}
} else {
if (value.charAt(0) == '=') {
value = value.substring(1);
}
}
}
}
}
return value;
}