常见的情况是:1、你把大小写搞错了,Windows 不区分文件名的大小写,但Java 区分,所以文件名大小写错时你也编译了,但是在运行时就会出错了。2、你的类的静态初始化部分出现了异常,比如某个 static 变量在初始化等号后面创建一个对象时抛出了异常失败了,导致这个类加载失败。