我在这里遇到的好奇的小问题:
我希望客户能够执行以下操作:
(1)java -jar myJar.jar inputFile outputFile
或者
(2)java -jar myJar.jar text outputFile
outputFile
是一个可选参数。
本质上(1)将为他们从文件中读取输入,而(2)他们提供我的程序将直接使用的输入。尽管我能想到,但无法确定参数是输入还是文件的位置。对于普通的命令行内容,您可以指定一个标志,-i inputfile
以表明您希望它从文件中读取。我在这里有哪些选择可以保持客户的易用性?
创建客户端必须用于第一个参数的语法是我唯一的选择吗?IE
"-t text"
还是"-i inputFile"
?
我见过诸如 commons cli 之类的库可以实现这一点,但我更喜欢不涉及使用库的解决方案。