ヘルプオプション

Spring Shell には help コマンドが組み込まれていますが、常にターゲットコマンドの引数を指定して呼び出す必要があるため、そこからコマンドヘルプを取得することを好むとは限りません。コマンドヘルプを出力するためのオプション --help および -h を持つすべてのコマンドの多くの cli フレームワークで一般的です。

デフォルトの機能は、すべてのコマンドがオプション --help および -h を持つように変更されることです。これは、特定のコマンドに存在する場合、他のコマンドラインオプションが入力されているかどうかにかかわらず、コマンドの実行を既存の help コマンドに自動的に短絡します。

以下の例は、デフォルト設定を示しています。

@Bean
CommandRegistration commandRegistration() {
	return CommandRegistration.builder()
		.command("mycommand")
		.withHelpOptions()
			.enabled(true)
			.longNames("help")
			.shortNames('h')
			.command("help")
			.and()
		.build();
}

構成オプションを使用してデフォルトの動作を変更することができます。

spring:
  shell:
    help:
      enabled: true
      long-names: help
      short-names: h
      command: help
プログラムまたはアノテーションを介して定義されたコマンドは、ヘルプオプションを自動的に追加します。アノテーションモデルを使用すると、グローバルにのみオフにすることができます。プログラムモデルでは、コマンドごとに設定を変更するオプションが提供されます。