Exception in thread "main" java.lang.NoClassDefFoundError

 

这个问题解决了!现总结如下

由于我是用JBuilder编写的。且能够运行。

接着我在cmd中运行了下,就出现这个问题。

原因:在cmd下应该有main函数

不管在哪个目录下都不行,不管执行那个文件都提示Exception  in  thread  "main"  java.lang.NoClassDefFoundError:classname(执行的那个文件名)    错误。

有以下两种错误:

第一种:

  F:\classes>java HelloWorld

  Exception in thread "main" java.lang.NoClassDefFoundError:HelloWorld

 

出现此问题是因为classpath设置错误。

我设置如下:

java_home=C:\Program Files\Java\jdk 1.5.0_05

classpath=.;%java_home%\lib\dt.jar;%java_home%\lib\tools.jar;(注意最前边是一点再一分号,这是表示当前路径,即环境变量classpath必须包含当前路径才行,如果不包括,需要用set classpath = %classpath%;e:\myjava临时设置)

就再设置下classpath的路径,根据文件所在地方。

set classpath=%classpath%;F:\classes;

这样设一下就可以解决问题了。

第二种:

详细错误如下:
D:\Inprise\AppServer\classes\com\enterpriseoffice>java  timeBean  
Exception  in  thread  "main"  java.lang.NoClassDefFoundError:  timeBean  (wrong  name:  
 com/enterpriseoffice/timeBean)  
               at  java.lang.ClassLoader.defineClass0(Native  Method)  
               at  java.lang.ClassLoader.defineClass(ClassLoader.java:486)  
               at  java.security.SecureClassLoader.defineClass(SecureClassLoader.java:11  
1)  
               at  java.net.URLClassLoader.defineClass(URLClassLoader.java:248)  
               at  java.net.URLClassLoader.access$100(URLClassLoader.java:56)  
               at  java.net.URLClassLoader$1.run(URLClassLoader.java:195)  
               at  java.security.AccessController.doPrivileged(Native  Method)  
               at  java.net.URLClassLoader.findClass(URLClassLoader.java:188)  
               at  java.lang.ClassLoader.loadClass(ClassLoader.java:297)  
               at  sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:286)  
               at  java.lang.ClassLoader.loadClass(ClassLoader.java:253)  
               at  java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313)

解决方法:

到D:\Inprise\AppServer\classes目录下执行java  -cp  .  com.enterpriseoffice.timeBean试试

说明:java  -cp  .  表示将当前路径指定为java运行的类路径,运行类的时候会在你指定的类路径中去查找这个类。

其他答案:

1、 你的文件名对吗?
JAVA要求你的文件和你的类名严格对应的。
比如 public class HelloWorld{ .....
那么文件名一定只能是HelloWorld.java,看仔细了!

2、你的程序中有main方法吗?参数什么的对吗?
main方法的声明应该是这样子的:
public static void main(String[] args)
事实上如果你用开发工具来做的话,是不会错的。如果你用UltraEdit之类的来写程序的话,就一个字不要改的照抄吧!

3、记住,javac后面跟的参数是文件名,但java 后面跟的是类名!
这是我开始学JAVA是犯的错,java HelloWorld.class,然后就报错。后来才弄明白,应该是java HelloWorld。

4、设置了classpath了吗?
不仅是在安装JDK时要设置的内容,一般来说最好还要自己设置一个目录来存放自己的类文件的。比如d:\class目录。
设置classpath=%classpath%;d:\class
那么,现在将HelloWorld.class文件COPY到d:\class目录下,再java HelloWorld应该就OK了。

5、结合第3点和第4点
如果你的类是属于某一个包的,比如这样一个类sony.test.HelloWorld,那么按照我在第4点中说的目录来说,就应该将HelloWorld.class文件存放到d:\class\sony\test\目录下。
执行的时候应该参考第3点中说的,按类名执行:java sony.test.HelloWorld。

Exception in thread main java.lang.NoClassDefFoundError解决了相关推荐

  1. Kettle安装报错:Debug Exception in thread “main“ java.lang.NoClassDefFoundError解决方式

    标题:Kettle安装报错:Debug  Exception in thread "main" java.lang.NoClassDefFoundError: org/eclips ...

  2. Exception in thread main java.lang.NoClassDefFoundError: antlr/ANTLRException 解决方法

    struts2.3.15 hibernate 3.2.0 整合,报错Exception in thread "main" java.lang.NoClassDefFoundErro ...

  3. Exception in thread “main“ java.lang.NoClassDefFoundError

    报错如下: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Logger   ...

  4. mybatis-plus异常Exception in thread “main“ java.lang.NoClassDefFoundError: org/apache/velocity/context

    在使用mybatis-plus进行代码生成时,出现报错: Connected to the target VM, address: '127.0.0.1:59589', transport: 'soc ...

  5. Exception in thread “main” java.lang.NoClassDefFoundError: freemarker/template/Configuration 代码生成报错

    mybatis-plus 代码生成机制很好用但是刚入门的新手总会遇到这个错误,原因是因为 mybatis-plus 项目 pom  虽然依赖了 <dependency><groupI ...

  6. exception in thread main java.lang.noclassdeffounderror wrong name

    不含包层次的HelloWorld.java public class HelloWorld{ public static void main(String[] args) { System.out.p ...

  7. Exception in thread “main“ java.lang.NoClassDefFoundError: org/apache/ibatis/io/Resources

    项目场景: 在学习mybatis框架的时候,刚刚学习如果查询数据库user表中的信息时 问题描述: 所有步骤都是按照教程上走的,但是运行后里面就出现了 Exception in thread &quo ...

  8. jar包不统一也会报错:Exception in thread main java.lang.NoClassDefFoundError

    一直在写json的例子,可是一直配不好环境,错误显示为Exception in thread "main" java.lang.NoClassDefFoundError: org/ ...

  9. Exception in thread “main“ java.lang.NoClassDefFoundError: javax/script/Compilable

    scala的交互模式启动时出现这个问题: 完整报错如下: $scala Shell 传递参数实例! 执行的文件名:/home/appleyuchi/scripts/scala/scala.sh Exc ...

最新文章

  1. 浅述numpy中argsort()函数的用法
  2. 深入理解 Kotlin Coroutine (一)
  3. Java文件流之练习
  4. 从0开始利用宝塔linux面板+DSShop搭建一个简单的购物网站
  5. 23种设计模式C++实现UML+源码汇总
  6. linux 4412跑程序,荣品4412的板子上跑纯linux
  7. git本地库(操作具体命令)
  8. 妈妈再也不用担心别人问我是否真正用过redis了
  9. XSS-Game level 13
  10. 我是如何2小时弄出房产网站小程序的?
  11. 油猴安装错误问题(下载中断问题)及脚本安装
  12. 如何取json对象中的数据
  13. 【收藏】韦东山嵌入式Linux课程梳理|随时更新
  14. DB2错误信息(按sqlcode排序)
  15. [经典力学]牛顿自然哲学的数学原理论文解读
  16. libcef-详细步骤-将cef浏览器嵌入到Win32中作为子窗口运行
  17. python发送邮件
  18. biostar来电自动开机_bios设置来电自动开机
  19. Android Studio | 5种Log | android.util.Log
  20. 环境变量的作用及设置方法

热门文章

  1. OCP最新题库052考题解析及答案-第37题
  2. 你那不是拖延症,只是习惯性逃避
  3. GraphX的三大图算法
  4. 在 GitHub 上创建一个 Swift 包:其实一点也不简单
  5. gjrand 4.0 发布,C语言的伪随机数生成器
  6. 2012《Linux杂志》读者选择奖 (Readers' Choice Awards 2012- Linux Journal)
  7. 美国商务部发布软件物料清单 (SBOM) 的最小元素(下)
  8. 供应链勒索攻击登场,REvil 利用0day 迫使安全事件响应工具 VSA部署勒索软件
  9. D-Link 不止暴露固件镜像密钥,还被曝5个严重0day
  10. 因严重缺陷,Rust 撤销所有 Crates 包的 API 令牌