0
すべてのコマンドについて、特定のインタフェースを実装する具体的なクラスがあります。たとえば :コマンドの説明を設定する方法ですが、オプションはありません
public class FooCommand implements Command{
@Parameter(names = {"-?","--help"}, description = "display this help",help = true)
private boolean helpRequested = false;
...
}
そして、これは私が取得する使用方法のメッセージです:
私は(ただし、オプションに)コマンドに説明を追加することができますどのようにUsage: foo-command [options]
Options:
-?, --help
display this help
。たとえば、私は、このような使用方法のメッセージを取得したい:
Usage: foo-command [options] - This command is used as base foo
Options:
-?, --help
display this help
EDITは私がfoo-コマンド、BOO-コマンド、ララ・コマンドを持っています。しかし、これらのコマンドはすべて別々のもので、1つのメインコマンド内にはありません(これはgit cloneとは異なります...)。 これは、私はスニペットは、あなたが探しているもののための出発点であるかもしれない以下の使用
JCommander jCommander=new JCommander(command, args);
jCommander.setProgramName(commandName);//for example foo-command
StringBuilder builder=new StringBuilder();
jCommander.usage(builder);
出力は、あなたの答えをいただき、ありがとうございます。しかし、私はCommandMainは必要ありません。私は "メイン"なしで別のコマンドを持っています –
@Pavelコマンドのメインは[MCVE](http://stackoverflow.com/help/mcve)を提供するためにあります。その場合は、あなたのコードのより良い例を質問に入れるべきでしょう。 – SubOptimal
私の編集をご覧ください。 –