Exception: java.lang.ClassNotFoundException com.Xxxx.Xxxx
异常名称:ClassNotFoundException
异常分析:找不到class类错误,xml文件路径错误?
问题原因:使用xpath解析数据,使用映射的方式获取class对象并调用方法时报错
解决方案:更改xml文件路径<className>com.xxx.xxx.xxx</className>
//1.创建SAXReader对象 SAXReader reader = new SAXReader(); //2.读取XML文件 Document dom = reader.read("F:\\JavaTest\\test\\classes.xml"); //3.获取<className>元素 Element classTag = (Element)dom.selectSingleNode("/classes/class/className"); //4.获取<className>元素的值 String className = classTag.getText(); //5.反射获取Class对象 Class aClass = Class.forName(className);//获取了com.xxx.xxx路径 System.out.println(className);//className=com.xxx.xxx
<classes> <!--此配置文件只配置一个类的信息--> <class> <className>com.xxx.xxx.xxx</className> <methodName>xxx</methodName> <methodName>xxx</methodName> <methodName>xxx</methodName> </class> </classes>
解决结果:成功!
错误等级:低级
*注意事项:ClassNotFoundException出现原因可能很多,本次为路径配置错误
Exception in thread "main" java.lang.ClassNotFoundException: com.xxxx.xxx at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:264) at com.itheima.main.MainApp.main(MainApp.java:31)
为什么会报这个错:
参考类加载机制 双亲委派:
![](https://img2022.cnblogs.com/blog/1867367/202208/1867367-20220826162156382-1078864475.png)