为什么编译后,显示打印出现这样的错误,如何解决Exception in thread "main" java.lang

Exceptioninthread"main"java.lang.NoClassDefFoundError:list(wrongname:List)atjava.lang... Exception in thread "main" java.lang.NoClassDefFoundError: list (wrong name: List)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
展开
 我来答
藤原子大雄
2017-12-24 · TA获得超过7197个赞
知道大有可为答主
回答量:6977
采纳率:82%
帮助的人:1756万
展开全部
java中的错误一般分为编译错误或者运行时的错误或异常
编译错误一般指的是语法上的错误,比如引用未付值的变量,语句后少了分号等等通过编译器可以检查出来的错误
运行时的错误或异常,是指编译器无法检查出来在程序中却又不能正确执行的代码,比如两个变量相除,除数为0,或者是你引用了null值等等,面向对象的语言中万物皆对象,运行时的各种异常或错误也是java的类的一部分,你可以参见j2se的api,在java.lang这个包下的Throwable就是所有异常和错误的父类,你可以看一看
java在运行出错时,通常都会在控制台上打印出错信息,比如
Exception in thread "main" java.lang.NullPointerException
at Test.main(Test.java:6)
那个java.lang.NullPointerException就是异常的名称,你就可以去API中查看此异常,就知道这个异常是什么意思了,第二行Test.java:6的意思就是Test.java这个文件第6行报的错误

无法加载主类,你是怎么判断的,如果你是用命令行启动,一般情况下看看检查你的class_path设置的对不对,你运行的class文件有没有,运行的class文件中有没有main方法,还有就是引用的其他class文件或jar包在不在classpath的路径下

祝你好运!
追问
之前下载的是jdk1.8 ,后来卸载了,重新装了1.7。现在编译后 执行就显示这样的错误。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式