本文整理汇总了Java中com.beust.jcommander.ParametersDelegate类的典型用法代码示例。如果您正苦于以下问题:Java ParametersDelegate类的具体用法?Java ParametersDelegate怎么用?Java ParametersDelegate使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
ParametersDelegate类属于com.beust.jcommander包,在下文中一共展示了ParametersDelegate类的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: printConfig
import com.beust.jcommander.ParametersDelegate; //导入依赖的package包/类
private static void printConfig(Class configClass) throws IllegalAccessException, InstantiationException {
Field[] fields = configClass.getDeclaredFields();
System.out.println();
System.out.println("### " + configClass.getSimpleName());
System.out.println();
Object defaultConfig = configClass.newInstance();
System.out.println("|Name|Default|Description|");
System.out.println("|---|---|---|");
try {
for (Field field : fields) {
field.setAccessible(true);
StringBuilder sb = new StringBuilder();
sb.append("|");
Parameter param = field.getDeclaredAnnotation(Parameter.class);
if (param != null) {
String names = Stream.of(param.names())
.collect(Collectors.joining(", "));
// name
sb.append(names).append("|");
// default
sb.append(param.required() ? "**required**" : field.get(defaultConfig) + " ").append("|");
// description
sb.append(param.description()).append("|");
System.out.println(sb.toString());
}
ParametersDelegate delegate = field.getDeclaredAnnotation(ParametersDelegate.class);
if (delegate != null) {
printConfig(field.getType());
}
}
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}