无法使用Scanner类

时间:2016-07-12 20:08:23

标签: java

我刚开始学习JAVA。我正在尝试一些非常简单的事情:在提示符上请求用户提供参数。我做了这个代码:

import java.util.Scanner;

public class Request
{ 
  public static void main (String[] args)
  {
      Scanner s = new Scanner(System.in);
      System.out.println("What's your name?");
      String name = s.nextLine();
      System.out.println("Welcome " + name);
  }
}

然后我编译它,当我用

执行它
Java -cp Request 

而不是提示期望参数 它打印JAVA命令的所有选项,就像我编写了这个:

java -help

为什么会这样?

1 个答案:

答案 0 :(得分:2)

使用java Request,或java -cp . Request; -cp选项为JVM提供了一个类路径,该路径应该是包含.class个文件的jar或目录列表。

正如Klitos所提到的,您可以设置CLASSPATH环境变量以提供默认的类路径。将其设置为包含当前目录.是常见的做法,使您无需在调用Java时使用-cp .

在Windows中,变量为%CLASSPATH%,并且是; - 分隔的窗口路径列表。
在Linux(和MacOS AFAIK)中,变量是$CLASSPATH,是一个: - 单独的unix pathes列表。