在eclipse环境下运行都正常,将class文件拷贝到unix环境下,运行就报:
线程 "main" 中发生异常java.lang.NoClassDefFoundError: signStampSend.class
Caused by: java.lang.ClassNotFoundException: signStampSend.class
at java.net.URLClassLoader.findClass(URLClassLoader.java:434)
at java.lang.ClassLoader.loadClass(ClassLoader.java:653)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:358)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
Could not find the main class: signStampSend.class. Program will exit
.
这是什么原因啊,求大神指导!
------解决方案--------------------
这个类signStampSend 是注入的吗?
检查一下
------解决方案--------------------
是否 signStampSend.class 里面有package 包路径呢?
放到unix下面没有设置相关的package路径,导致Could not find the main class: signStampSend.class. Program will exit
------解决方案--------------------
signStampSend.class 里面有main方法入口吗?
------解决方案--------------------
linux下面路径设置的问题 看看/etc/profile这个文件的classpath
------解决方案--------------------
追加 上dt.jar tools.jar
------解决方案--------------------
/usr/java6/bin/java -cp /home/lfa/lib/axis.jar:/home/lfa/lib/ojdbc.jar /home/lfa/bin/signStampSend.class signStampSend
或者 到signStampSend.class 所在目录
java -cp . /home/lfa/lib/axis.jar:/home/lfa/lib/ojdbc.jar signStampSend注意 .
------解决方案--------------------
2边环境统一,是不是缺少jar
------解决方案--------------------
这个问题我遇到过,与classloader的机制有关系。
------解决方案--------------------
确认下有main方法类的包名是否正确