我试图在java中的命令行中输入两个值。我收到了这个错误。为什么?

时间:2017-04-22 02:31:22

标签: java

    String fileName1 = args[0]; //LINE 14 i am getting error here
    String fileName2 = args[1]; 


    File file1 = new File(fileName1);
    File file2 = new File(fileName2);
    Scanner input1 = new Scanner(file1);
    Scanner input2 = new Scanner(file2);

这是我的主要功能中的一段代码。每当我尝试运行我的程序时,我都会收到以下错误:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
   at MainProgram.main(MainProgram.java:14)

我该如何解决这个问题?

3 个答案:

答案 0 :(得分:1)

您的命令行必须如下:java -jar jarfile.jar firstString secondString 您必须在命令中提供2个字符串。 firstStringsecondString

答案 1 :(得分:0)

如果您不必在命令行上运行。你必须去运行配置... - >并找到你的主要课程 - >输入string1和string2作为我的图片。 enter image description here

在这张照片中,托盘是我班级的主要功能

答案 2 :(得分:0)

问题在于您将其称为“命令行”而不是“控制台”。 这是命令行的示例:

Command Line (or Command Prompt in Windows

这是一个控制台示例,假设您使用的是Eclipse:

Eclipse Console

因此,您尝试在程序运行后输入控制台中的文件位置,但Java程序在您运行它时通过args[]中的main数组预期它方法。因此,错误。要解决这个问题,你应该使用Tuyen的答案。

相关问题