注解
@Command
注解用于方法上,将其标记为命令注册的候选对象。在下面的示例中,定义了一个名为 example
的命令。
class Example {
@Command(command = "example")
public String example() {
return "Hello";
}
}
@Command
注解可以放置在类上,该类定义了同一类中 @Command
方法的默认值或共享设置。在下面的示例中,定义了一个名为 parent example
的命令。
@Command(command = "parent")
class Example {
@Command(command = "example")
public String example() {
return "Hello";
}
}
使用 @Command
不会自动注册命令目标,而是需要使用 @EnableCommand
和/或 @CommandScan
注解。这种模型在 Spring 体系的其他部分很常见,并且为用户提供了更好的灵活性,使其能够包含而非排除命令目标。
可以使用 @EnableCommand
定义目标类。它将从所有配置类中获取。
@EnableCommand(Example.class)
class App {
}
可以使用 @CommandScan
定义目标类。它将从所有配置类中获取。
在 Spring Boot App 类中定义 @CommandScan 作为顶层注解,它将自动扫描 App 下所有包和类中的所有命令目标。 |
@CommandScan
class App {
}