无法使用包声明运行类

时间:2014-06-13 13:19:44

标签: java packages

出于某种原因,我无法运行任何以包声明开头的程序。 让我们说我正在尝试运行一个名为“HelloDate.java”的简单程序。

package Test;
import java.util.*;

public class HelloDate {
    public static void main(String [] args) {
    System.out.println("Hello, it's: ");
    System.out.println(new Date());

    }
}

HelloDate.java和HelloDate.class都位于同一个文件夹中:

  

/用户/ eduarddedu /桌面/测试

我正试图在'测试'内部运行HelloDate。夹; ' PWD'返回:

  

/用户/ eduarddedu /桌面/测试

CLASSPATH变量未设置为任何内容:echo $CLASSPATH返回空行。

在我看来,我现在应该可以使用以下命令运行程序:

  

java HelloDate

但我得到的是:Error: Could not find or load main class HelloDate

我也尝试将CLASSPATH设置为(或者):

  

/用户/ eduarddedu /桌面

     

/用户/ eduarddedu /桌面/测试

仍然无效。

如果我在开始时删除包装声明,我可以在“测试”内部运行程序。文件夹或其他任何地方,通过设置CLASSPATH变量。

2 个答案:

答案 0 :(得分:4)

您正在从错误的目录运行该文件。

转到/Users/eduarddedu/Desktop并运行:

javac Test/HelloDate.java
java Test.HelloDate

答案 1 :(得分:2)

您应该从Test文件夹外部调用java Test.HelloDate