diff --git a/pom.xml b/pom.xml index 5a9a2f07..b89abf45 100644 --- a/pom.xml +++ b/pom.xml @@ -25,7 +25,7 @@ 3.4.0 3.8.0 1.8 - 1.48 + 1.81 diff --git a/spring-shell-jcommander-adapter/src/main/java/org/springframework/shell/jcommander/JCommanderParameterResolver.java b/spring-shell-jcommander-adapter/src/main/java/org/springframework/shell/jcommander/JCommanderParameterResolver.java index c70c4dfe..9f802dc4 100644 --- a/spring-shell-jcommander-adapter/src/main/java/org/springframework/shell/jcommander/JCommanderParameterResolver.java +++ b/spring-shell-jcommander-adapter/src/main/java/org/springframework/shell/jcommander/JCommanderParameterResolver.java @@ -104,9 +104,7 @@ public class JCommanderParameterResolver implements ParameterResolver { private JCommander createJCommander(MethodParameter methodParameter) { Object pojo = BeanUtils.instantiateClass(methodParameter.getParameterType()); - JCommander jCommander = new JCommander(pojo); - jCommander.setAcceptUnknownOptions(true); - return jCommander; + return new JCommander(pojo); } @Override @@ -122,7 +120,7 @@ public class JCommanderParameterResolver implements ParameterResolver { unCamelify(j.getParameterized().getType().getSimpleName())) .keys(Arrays.asList(j.getParameter().names())) .help(j.getDescription()) - .mandatoryKey(!j.equals(jCommander.getMainParameter())) + .mandatoryKey(!j.equals(jCommander.getMainParameterValue())) // Not ideal as this does not take reverse-conversion into account, but just toString() .defaultValue(j.getDefault() == null ? "" : String.valueOf(j.getDefault())) .elementDescriptor( @@ -136,7 +134,7 @@ public class JCommanderParameterResolver implements ParameterResolver { private Stream streamAllJCommanderDescriptions(JCommander jCommander) { return Stream.concat( jCommander.getParameters().stream(), - jCommander.getMainParameter() != null ? Stream.of(jCommander.getMainParameter()) : Stream.empty()); + jCommander.getMainParameterValue() != null ? Stream.of(jCommander.getMainParameterValue()) : Stream.empty()); } // Java 9+ warn if you try to reflect on JDK types