开发者社区> 嗯哼9925> 正文

Java 的 Exception in thread "main" java.lang.NoClassDefFoundError

简介:
+关注继续查看
近日,客户提出Java程序运行连接connection有误,因此开始了研究。

由于很久不编写Java 程序,并且多数情况下需要用 Eclipse。此次为简单起见,只用Java 纯命令行进行调试:

刚开始的时候,可以正常运行。

后来,加入了classpath ,反而报错:

Exception in thread "main" java.lang.NoClassDefFoundError: test01
Caused by: java.lang.ClassNotFoundException: test01
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: test01. Program will exit. 

后经反复查阅资料,才明白问题出在哪里。

我们设置了 CLASSPATH以后,我们必须要注意:

CLASSPATH=%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\jre\lib\rt.jar;c:\gaojian\jdbc\edb-jdbc14.jar;c:\gaojian\jdbc\c3p0-0.9.2-pre4.jar; c:\gaojian\jdbc\mchange-commons-java-0.2.2.jar

应该改为:

CLASSPATH=.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\jre\lib\rt.jar;c:\gaojian\jdbc\edb-jdbc14.jar;c:\gaojian\jdbc\c3p0-0.9.2-pre4.jar; c:\gaojian\jdbc\mchange-commons-java-0.2.2.jar

这个 . ,表示的是当前路径。 以此备忘。



本文转自健哥的数据花园博客园博客,原文链接:http://www.cnblogs.com/gaojian/archive/2012/08/21/2648686.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Cannot instantiate test(s): java.lang.SecurityException: Prohibited package name: java
Cannot instantiate test(s): java.lang.SecurityException: Prohibited package name: java
65 0
Exception in thread “main“ java.lang.UnsupportedOperationException
Exception in thread “main“ java.lang.UnsupportedOperationException
60 0
Caused by: java.lang.ClassNotFoundException: com.mchange.v2.log.MLog
Caused by: java.lang.ClassNotFoundException: com.mchange.v2.log.MLog
193 0
Exception in thread “main“ java.lang.RuntimeException: java.lang.RuntimeException: Unable to instant
Exception in thread “main“ java.lang.RuntimeException: java.lang.RuntimeException: Unable to instant
339 0
Exception in thread “main“ java.lang.RuntimeException: java.lang.RuntimeException: The root scratch
Exception in thread “main“ java.lang.RuntimeException: java.lang.RuntimeException: The root scratch
90 0
Java - nested exception is java.lang.StackOverflowError
Java - nested exception is java.lang.StackOverflowError
133 0
Java报错Exception in thread “main“ java.lang.ExceptionInInitializerError
Java报错Exception in thread “main“ java.lang.ExceptionInInitializerError
635 0
java.lang.ExceptionInInitializerError的原因
java.lang.ExceptionInInitializerError的原因
595 0
Exception in thread “main“ java.lang.NoClassDefFoundError: opennlp/tools/tokenize/TokenizerModel
Exception in thread “main“ java.lang.NoClassDefFoundError: opennlp/tools/tokenize/TokenizerModel
64 0
+关注
嗯哼9925
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
Java8简明教程
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载