此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Shell 3.3.3! |
命名
如果需要修改选项长名称,可以完成
using 接口,这是一个简单的 .在此界面中原始选项
name 进来,修改后的名字出来。OptionNameModifier
Function<String, String>
修饰符可以按 in 定义,
全局默认为 Bean 或通过 Configuration Properties。
在 takes 中手动定义的修饰符优先
超过 1 定义 global 。未定义全局修饰符
默认。OptionSpec
CommandRegistration
OptionSpec
您可以在 中使用 中的选项定义一个 。CommandRegistration
CommandRegistration.builder()
.withOption()
.longNames("arg1")
.nameModifier(name -> "x" + name)
.and()
.build();
添加一个单例 bean 作为类型,这将变为
全局默认值。OptionNameModifier
@Bean
OptionNameModifier sampleOptionNameModifier() {
return name -> "x" + name;
}
也可以只添加 configuration 属性,用于自动配置
一个基于定义的类型。spring.shell.option.naming.case-type
noop
不执行任何操作,则 、 分别激活 、 或 的内置修饰符。camel
snake
kebab
pascal
camelCase
snake_case
kebab-case
PascalCase
如果直接创建 bean,则全局
default via configuration 仅在使用
预配置实例。查看更多 [using-shell-commands-programmaticmodel]。CommandRegistration Builder |
spring:
shell:
option:
naming:
case-type: noop
# case-type: camel
# case-type: snake
# case-type: kebab
# case-type: pascal
例如,在 annotated 方法中定义的选项,如下所示。
@ShellMethod(key = "option-naming-sample")
public void optionNamingSample(
@ShellOption("from_snake") String snake,
@ShellOption("fromCamel") String camel,
@ShellOption("from-kebab") String kebab,
@ShellOption("FromPascal") String pascal
) {}
默认情况下,该命令会显示名称
直接从 .help
@ShellOption
OPTIONS
--from_snake String
[Mandatory]
--fromCamel String
[Mandatory]
--from-kebab String
[Mandatory]
--FromPascal String
[Mandatory]
定义和默认
修饰符,选项名称如下所示。spring.shell.option.naming.case-type=kebab
OPTIONS
--from-snake String
[Mandatory]
--from-camel String
[Mandatory]
--from-kebab String
[Mandatory]
--from-pascal String
[Mandatory]