Java Top.

使用Spring 5和Spring Boot 2开始,通过学习春天课程:

>>查看课程

1.介绍

使用参数从命令行运行应用程序非常常见。特别是在服务器端。通常,我们不希望应用程序在每次运行时都在做同样的事情:我们希望某种方式配置其行为。

在此简短的教程中,我们将探讨我们如何处理Java中的命令行参数。

2.访问Java中的命令行参数

自从此以来主要的方法是Java应用程序的入口点,JVM通过其参数传递命令行参数。

传统的方式是使用一个细绳大批:

公共静态void main(String [] args){//句柄参数}

然而,Java 5引入了Varargs,这是绵羊衣服的阵列。因此,我们可以定义我们的主要的与A.细绳vararg:

公共静态void main(String ... args){//处理争论}

它们相同,因此它们之间的选择完全取决于个人的品味和偏好。

方法参数主要的方法包含与执行时传递的相同顺序的命令行参数。如果我们想访问我们得到多少参数,我们只需要检查长度阵列。

例如,我们可以在标准输出上打印参数的数量及其值:

公共静态void main(String [] args){system.out.println(“参数计数:”+ args.length);for(int i = 0; i 

请注意,在某些语言中,第一个参数将是应用程序的名称。另一方面,在Java中,此数组仅包含参数。

3.如何传递命令行参数

既然我们有一个处理命令行参数的应用程序,我们渴望尝试它。让我们看看我们有什么选择。

3.1。命令行

最明显的方式是命令行。让我们假设我们已经编译了这个课程com.金宝搏188体育baeldung.commandlinearguments.cliexample.跟我们主要的其中的方法。

然后我们可以使用以下命令运行它:

java com.金宝搏188体育baeldung.commandlinearguments.cliexample.

它产生以下输出:

参数计数:0

现在,我们可以在课堂名称后传递参数:

Java com.金宝搏188体育baeldung.commandlinearguments.cliexample你好世界!

并且输出是:

参数数:2参数0:你好参数1:世界!

通常,我们将我们的应用程序发布为JAR文件,而不是一堆。班级文件。让我们说,我们把它打包了cli-example.jar.,我们设置了com.金宝搏188体育baeldung.commandlinearguments.cliexample.作为主班。

现在我们可以在没有参数的情况下运行它:

java -jar cli-example.jar

或争论:

Java -Jar Cli-example.jar你好世界!参数数:2参数0:你好参数1:世界!

注意Java将在类名或JAR文件名之后对待每个参数作为我们应用程序的参数。因此,我们之前通过的一切都是JVM本身的参数。

3.2。蚀

在我们正在进行的应用程序时,我们希望检查它是否正常工作。

在Eclipse中,我们可以在运行配置的帮助下运行应用程序。例如,运行配置定义要使用的JVM,什么是入口点,类路径等。当然,我们可以指定命令行参数。

创建适当运行配置的最简单方法是右键单击我们的主要的方法,然后选择运行as> java应用程序从上下文菜单中:

有了这个,我们立即使用符合我们项目设置的设置运行应用程序。

要提供参数,我们应该编辑该运行配置。我们可以通过它运行>运行配置......菜单选项。在这里,我们应该点击争论标签并填充计划论点文本框:

跑步将运行应用程序并通过我们刚输入的参数。

3.3。Intellij.

Intellij使用类似的过程来运行应用程序。它仅作为配置调用这些选项。

首先,我们需要右键单击主要的方法,然后选择运行'cliexample.main()':

这将运行我们的程序,但它也将添加它跑步列表以获取进一步配置。

所以,要配置参数,我们应该选择运行>编辑配置...并编辑计划论点文本框:

之后,我们应该按OK并重新运行我们的应用程序,例如使用工具栏中的“运行”按钮。

3.4。NetBeans.

NetBeans还与其运行和配置进程进行了契约。

我们应该首先通过右键单击运行我们的应用程序主要的方法和选择运行文件:

如前所述,这会创建运行配置并运行程序。

接下来,我们必须在该运行配置中配置参数。我们可以通过选择来这样做运行>设置项目配置>自定义...然后我们应该跑步在左边并填补争论文本域:

之后,我们应该击中确定并启动应用程序。

4.第三方图书馆

在简单的方案中,手动处理命令行参数是简单的。但是,随着我们的要求变得越来越复杂,我们的代码也是如此。因此,如果我们想创建具有多个命令行选项的应用程序,则更容易使用第三方库。

幸运的是,那些支持大多数用例的图书馆都有一流的图书馆。两个流行的例子是Picocli.弹簧壳

结论

使您的应用程序的行为可配置是一个好主意。在本文中,我们了解如何使用命令行参数进行操作。此外,我们涵盖了各种方式来传递这些参数。

像往常一样,可以使用示例在github上

Java底部

使用Spring 5和Spring Boot 2开始,通过学习春天课程:

>>查看课程
1评论
最老的
最新
内联反馈
查看所有评论
评论在本文上关闭!