Apache Commons CLI:替换已弃用的OptionBuilder?

时间:2016-01-28 00:15:34

标签: java apache-commons apache-commons-cli

IntelliJ显示在http://commons.apache.org/proper/commons-cli/usage.html的此示例代码中不推荐使用OptionBuilder。

我应该使用什么作为替代品?

import org.apache.commons.cli.*;

Options options = new Options();
options.addOption(OptionBuilder.withLongOpt( "block-size" )
       .withDescription( "use SIZE-byte blocks" )
       .hasArg()
       .withArgName("SIZE")
       .create());

2 个答案:

答案 0 :(得分:20)

来自http://commons.apache.org/proper/commons-cli/javadocs/api-release/index.html

  

已过时。从1.3开始,使用Option.builder(String)代替

这是替代品:

Options options = new Options();
Option option = Option.builder("a")
    .longOpt( "block-size" )
    .desc( "use SIZE-byte blocks"  )
    .hasArg()
    .argName( "SIZE" )
    .build();
options.addOption( option );

答案 1 :(得分:2)

使用

中的(内部)类Option.Builder
Option option = Option.builder("a")
 .required(true)
 .longOpt("arg-name")
 .build();

比照。 Option.Builder Java-Doc。即builder()的静态Option方法会返回Option.Builder,而build()的跟踪调用会为您提供Option