Java jar文件的命令行选项

Java jar文件的命令行选项

问题描述:

我试图搜索周围,但没有看到适当的文件显示如何这样做,我张贴这个。Java jar文件的命令行选项

我要调用一个函数在我的jar文件来处理命令行给出一个字符串,如:

java -jar myFile.jar -s "This is the string I want to process" 

所使用的代码如下:

Option inputStringOpt = new Option("s", "Input string"); 
options.addOption(inputStringOpt); 
try { 
    CommandLine commandLine = commandLineParser.parse(options, args); 
    String inputString = commandLine.getOptionValue("s"); 
    //Call the required function 
    someFunction(inputString); 
} 
catch (ParseException e) { 
    System.err.println("Error: " + e.getMessage()); 
} 

然而,inputString始终为空。我如何阅读所需的字符串?

有关更多信息,它会抛出一个带有StringReader的NullPointerException。

谢谢。

+1

是否参数'args'显示? – Kayaman

+0

“Option”和“CommandLine”类来自哪里,某些库?它们不是标准的Java API类。 – Jesper

+0

是的,他们来自图书馆,我把它们包括在jar文件中。 – Hoai

你的第一行应该是:

Option inputStringOpt = new Option("s", true, "Input string"); 
+0

“true”选项是否意味着必须提供字符串? – Hoai

+0

@Hoai这意味着“s”选项有一个参数 –

+1

@MauricePerry你怎么知道这个?他甚至没有告诉我们'Option'类来自哪里以及它的API是什么。 – Jesper