mac编译java时生成class文件但运行时显示找不到或无法加载主类

如题,我将我的代码都放在了一个包里,在编译的时候可以生成class文件,但“java classname”运行时显示找不到或无法加载主类,我如果不把这些代码放到包里,就可以运行,请问这是怎么回事?谢谢!
package a.b.c;

public class D{
    public static void main(String[] args){
System.out.println("Hello World");
    }
}

如上的代码,运行的时候,必须运行  java a.b.c.D

而且,JAVA文件必须在陵猛package标识的尺销桥相应目录斗神中。比如说

E:acD.java

那编译后,我必须在E:这个目录下运行java a.b.c.D


加上包名喽

java 包名.classname