在用到 ClassLoader加载资源的时候,经常会出现以下错误:
Exception in thread "main" java.lang.NoClassDefFoundError: com/tools/Result
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2328)
at java.lang.Class.getConstructor0(Class.java:2640)
at java.lang.Class.newInstance0(Class.java:321)
at java.lang.Class.newInstance(Class.java:303)
at com.npower.dm.tools.backup.Startup.main(Startup.java:78)
解决方法:
不要在同包内加无用的类
打包的时候,只要打Startup.java即可,不用打其它的类,
ClassLoader会自己去找,找到后加载
如果打包了,ClassLoader也加载了,那就重复了,所以就出现上面的情况.
自己发现说的可能不太清楚,发现描述一个事件也是很有学问的,以后再加强!