This question already has answers here:
How to fetch parameters when using the Apache Commons CLI library
                                
                                    (2个答案)
                                
                        
                                3年前关闭。
            
                    
我正在尝试使用Apache Commons CLI识别我的Java程序的参数。因此,有很多选项(例如“ -p”作为示例),但是大多数情况下,存在应该用作Java程序输入的文件名。请注意,所有选项都没有顺序限制。

该程序启动的示例:

decac -p -r 5 test.deca

我在解析-p和-r(带有参数“ 5”)选项时没有问题,但是知道它可以是任何东西时,如何为“ test.deca”创建一个选项。也可能是pathTo / anotherTest.deca

最佳答案

我认为ApacheCommonsCLI不可能即用即用。您可以根据this answer进行一些技巧,也可以按照apache CLI documentation中所述使用参数选项

Option decafile   = OptionBuilder.withArgName( "file.deca" )
                            .hasArg()
                            .withDescription(  "target deca file" )
                            .create( "decafile" );


可以稍后在-dfile.deca或--decafile = file.deca中使用

09-11 02:57