Legacy Annotation
当你使用标准 API 时,bean 中的方法会作为可执行的命令,前提是:
-
该 bean 类带有 `@ShellComponent`注释。(这用于限制被认为的 bean 集合。)
-
该方法带有 `@ShellMethod`注释。
|
Unresolved include directive in modules/ROOT/pages/commands/registration/legacyannotation.adoc - include::../../test/java/org/springframework/shell/docs/AnnotationRegistrationSnippets.java[]
@ShellMethod
注解的唯一必需属性是其 value
属性,它应该对命令做什么有一个简短的、一句话的描述。这使得您的用户可以在不离开 shell 的情况下获得关于您命令的一致帮助(请参阅 Help )。
你的命令描述应简短——不超过一两句话。为达到更好的连贯性,它应以大写字母开头,以句号结尾。 |
默认情况下,你不需要为你的命令指定键(也就是说,shell 中用来调用该命令的单词)。方法名称用作命令键,将驼峰式名称转换为带短划线的 GNU 风格名称(例如 sayHello()
变为 say-hello
)。
但是,你可以使用注解的 key
属性来明确设置命令键:
Unresolved include directive in modules/ROOT/pages/commands/registration/legacyannotation.adoc - include::../../test/java/org/springframework/shell/docs/AnnotationRegistrationSnippets.java[]
|
命令键可以包含几乎任何字符,包括空格。然而在想名称时,请记住一致性经常会受到用户青睐。即,你应避免将破折号名称与空格名称混合使用,以及其他不一致。 |