傳統註解
當您使用標準 API 時,只要符合以下條件,bean 上的方法就會轉換為可執行的命令:
-
bean 類別帶有
@ShellComponent
註解。(這用於限制考量的 bean 集合。) -
方法帶有
@ShellMethod
註解。
您可以使用註解的 |
@ShellComponent
static class MyCommands {
@ShellMethod
public void mycommand() {
}
}
@ShellMethod
註解唯一需要的屬性是其 value
屬性,該屬性應包含對命令功能的簡短一句描述。這讓您的使用者無需離開 shell 即可獲得關於您的命令的一致性說明(請參閱說明)。
您的命令描述應簡短——不超過一或兩句話。為了更好的一致性,它應該以大寫字母開頭,並以句點結尾。 |
預設情況下,您無需指定命令的鍵(也就是,在 shell 中用於調用它的單字)。方法名稱會被用作命令鍵,並將 camelCase 名稱轉換為破折號、gnu 風格的名稱(例如,sayHello()
變成 say-hello
)。
但是,您可以使用註解的 key
屬性來明確設定命令鍵
@ShellMethod(value = "Add numbers.", key = "sum")
public int add(int a, int b) {
return a + b;
}
key 屬性接受多個值。如果您為單一方法設定多個鍵,則該命令會使用這些不同的別名進行註冊。 |
命令鍵可以包含幾乎任何字元,包括空格。不過,在想出名稱時,請記住使用者通常會欣賞一致性。也就是說,您應該避免將破折號名稱與空格名稱和其他不一致之處混合使用。 |