求助:NoClassDefFoundError和ClassNotFoundException

jarrywhu 2012-08-29 09:24:12
test.jar里面有main方法,ClassXXX是在另外一个jar包aaa-api-1.0.jar里面的,我已经指定classpath了,为什么还有这样的错误呢?我把aaa-api-1.0.jar拷贝到与test.jar同级目录下,也不行,一样的错误。网上搜索这个错误,一般都是说classpath有问题,但我设置了也不行,为啥呢?

[root@localhost target]# java -cp "/root/project/myapp/java/aaa-api/target/aaa-api-1.0.jar:." -jar test.jar
Exception in thread "main" java.lang.NoClassDefFoundError: com/mycompany/aaa/bbb/ClassXXX
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2442)
at java.lang.Class.getMethod0(Class.java:2685)
at java.lang.Class.getMethod(Class.java:1620)
at sun.launcher.LauncherHelper.getMainMethod(LauncherHelper.java:492)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:484)
Caused by: java.lang.ClassNotFoundException: com.mycompany.aaa.bbb.ClassXXX
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
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:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 6 more
...全文
73 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
jarrywhu 2012-08-30
  • 打赏
  • 举报
回复
去掉双引号也是一样的错误
jarrywhu 2012-08-30
  • 打赏
  • 举报
回复
去掉双引号也是一样的错误
jarrywhu 2012-08-30
  • 打赏
  • 举报
回复
去掉双引号也是一样的错误
MiceRice 2012-08-29
  • 打赏
  • 举报
回复
除了CLASSPATH问题,就是这个jar中是否真的有所需要的这个类了。。。

其它确实也想不出什么合理解释。

另外,尝试下去掉双引号吧:

java -cp /root/project/myapp/java/aaa-api/target/aaa-api-1.0.jar -jar test.jar

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧