当前位置: 代码迷 >> Eclipse >> 运用eclipse打包,jar不能运行,报错NoClassDefFoundError
  详细解决方案

运用eclipse打包,jar不能运行,报错NoClassDefFoundError

热度:85   发布时间:2016-04-23 18:51:46.0
使用eclipse打包,jar不能运行,报错NoClassDefFoundError
我已经指定了主类,所有用到的库都打到包里了,而且主类也存在。实在没有出错的道理,各位帮帮忙?

------解决方案--------------------
代码迷推荐解决方案:java环境变量设置
------解决方案--------------------
.java文件到.jar文件时,
在转换过程中一定要选择包含有main class的 class名字,
最好就用你.java文件的class名字,
当然如果你.java 中 class没有用public修饰的话,可以改名字,
但是一定要选择main class,然后在 translate.
要不然他找不到启动的main class.
------解决方案--------------------
ClassNotFound 看看具体哪个类找不到,是启动类?还是引用到的类库的类?
------解决方案--------------------
这个jar在别人的电脑上能运行,而我的电脑则不行?
//***************************************
那你就别怨你打包的问题,是你机器的问题,
------解决方案--------------------
up
去抽根烟,也许回来问题就解决了
------解决方案--------------------
把错误提示信息贴出来
------解决方案--------------------
设置jar的classpath
------解决方案--------------------
楼主是怎么运行的?

看看你的CLASSPATH里有没有“.”
------解决方案--------------------
试试你的eclipse运行其它程序会不会报错......
------解决方案--------------------
我也用FATJAT,可能是你配的环境变量有问题。需要在我的电脑里面配置,这方面的文章网上可以找到的。
------解决方案--------------------
有可能有些包没有打进去,比如数据库驱动,而你电脑又没有配这些包的环境变量,其他人的电脑配置了,所以到其他人的电脑运行正常。
------解决方案--------------------
通过java -jar 运行jar文件的时候,他需要的类库必须通过MANIFEST.MF文件指定的
你的MANIFEST.MF文件内容类似:
Manifest-Version:1.0
Main-class:你的main类
Class-path:再这里指定你需要的jar库(比如:log4j.jar,那么你就必须在你运行java -jar 的目录下面有log4j.jar文件才行)。

再不明白上google去搜一下。java jar class-path manifest
  相关解决方案