转自:http://www.myexception.cn/java%20exception/95.html

源码如下:

import java.io.File;

import java.util.List;

import org.dom4j.Document;

import org.dom4j.io.SAXReader;

public class Test {

public static void main(String args[]) {

try {

File f = new File("D:/data.xml");

if (f.exists()) {

SAXReader reader = new SAXReader();

reader.setEncoding("UTF-8");

Document document = reader.read(f);

if (document == null) {

System.out.println("hehe");

}else{

System.out.println(document.content());

<b>List list = document.selectNodes("//root/author");</b>

System.out.println(list.size());

}

}else

System.out.println("file not exist");

}

} catch (Exception e) {

e.printStackTrace();

}

}

}

xml文件如下:

<?xml version="1.0" encoding="UTF-8"?>

<root name="max">

<author name="James" location="UK">James Strachan</author>

<author name="Bob" location="US">Bob McWhirter</author>

</root>

运行错误信息如下:

[org.dom4j.tree.DefaultElement@7a84e4 [Element: <root attributes:
[org.dom4j.tree.DefaultAttribute@1aaa14a [Attribute: name name value
"max"]]/>]]

java.lang.NoClassDefFoundError: org/jaxen/JaxenException

at org.dom4j.DocumentFactory.createXPath(DocumentFactory.java:230)

at org.dom4j.tree.AbstractNode.createXPath(AbstractNode.java:207)

at org.dom4j.tree.AbstractNode.selectNodes(AbstractNode.java:164)

at test2.Test.main(Test.java:21)

Exception in thread "main"

错误出在List list = document.selectNodes("//root/author");这里,但我不知道为什么错

------解决方法--------------------------------------------------------

少包 jaxen.jar

------解决方法--------------------------------------------------------

同上,在dom4j的解压包lib目录下把jaxen.jar放到你的类路径里去

总结java.lang.NoClassDefFoundError可能有俩种:

1.java.lang.NoClassDefFoundError指向的"org/jaxen/JaxenException "这个字符串所指对象的类不存在

如不是自定义类的话,到 http://www.findjar.com 查找包含该信息的jar包并引入.

2.类的加载先后顺序有问题

如启动web   application的时候,类的加载是有一个先后顺序的,如果应该先加载的类在后面加载,别的类在调用时找不到它,那么也会报这个错.

其他 java.lang.NoClassDefFoundError 异常处理都可这样处理.

用dom4j解析xml 报java.lang.NoClassDefFoundError:org/jaxen/JaxenException的更多相关文章

  1. java.lang.NoClassDefFoundError: org/jaxen/JaxenException

    今天想要解析 xml 文件,查了下,解析xml 的可以用:jdom 或者 dom4j 使用dom4j 来选用某一个指定元素的时候,如 List<Element> childElements ...

  2. 错误:java.lang.NoClassDefFoundError: org/jaxen/JaxenException

    tomcat运行时候报错: java.lang.NoClassDefFoundError: org/jaxen/JaxenException at org.dom4j.DocumentFactory. ...

  3. 类似java.lang.NoClassDefFoundError: org/jaxen/JaxenException解决方法

    在使用dom4j的xpath时出现java.lang.NoClassDefFoundError: org/jaxen/JaxenException的异常,原因是dom4j引用了jaxen jar包,而 ...

  4. java.lang.NoClassDefFoundError: org/jaxen/JaxenException解决方法

    在使用dom4j的xpath时出现java.lang.NoClassDefFoundError: org/jaxen/JaxenException的异常,原因是dom4j引用了jaxen jar包,而 ...

  5. json转xml报[java.lang.NoClassDefFoundError: nu/xom/Serializer]

    原文:http://blog.csdn.net/figo645/article/details/48413571 开始学习JSON了,那么很自然的,我开始要熟悉一些基本的JSON语法 {}代表对象,[ ...

  6. 解决dom4j java.lang.NoClassDefFoundError: org/jaxen/JaxenException

    即使用这个方法需要以下两个包: dom4j-1.6.1.jar-306 KB jaxen-1.1-beta-6.jar-238 KB 或者 <dependency> <groupId ...

  7. java.lang.ClassNotFoundException: org.jaxen.JaxenException

    java.lang.ClassNotFoundException: org.jaxen.JaxenException java.lang.ClassNotFoundException: org.jax ...

  8. java.lang.ClassNotFoundException: org.jaxen.JaxenException 解决方法

    当遇到如下exception时, May 11, 2017 4:23:17 PM org.apache.catalina.core.StandardWrapperValve invoke SEVERE ...

  9. dom4j使用xpath报异常 Exception in thread "main" java.lang.NoClassDefFoundError: org/jaxen/NamespaceContext

    Exception in thread "main" java.lang.NoClassDefFoundError: org/jaxen/NamespaceContext      ...

随机推荐

  1. dedecms代码研究三

    上次,我们从dedecms的index.PHP文件中了解到了很多信息,也提出了一些问题: 1)加载了/include/common.inc.php,里面做了哪些工作? 2)/include/arc.p ...

  2. Mysql函数instr、locate、position VS like

    Mysql 大家都会用这样的語法: SELECT `column` FROM `table` where `condition` like `%keyword%’ 事实上,可以使用 locate 和 ...

  3. http的响应对象

    Servlet 服务器 HTTP 响应 正如前面的章节中讨论的那样,当一个 Web 服务器响应一个 HTTP 请求时,响应通常包括一个状态行.一些响应报头.一个空行和文档.一个典型的响应如下所示: H ...

  4. Ubuntu14.04安装MySQL-python异常: mysql_config: not found,Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-MJWMPd/MySQL-python/

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABUoAAAE8CAIAAACZ6RwMAAAgAElEQVR4nOydaVxTx9fHn9dhKWqltv

  5. mongodb固定集合,建立管理员安全验证

    建立普通集合 db.createCollections aaa; 建立固定集合名称book capped true 固定集合 size大小 max:文档数量 db.createCollection(& ...

  6. netstat大量time_wait连接

    http://chembo.iteye.com/blog/1503770 http://www.2cto.com/os/201007/54067.html http://blog.csdn.net/d ...

  7. 计算机网络 学习笔记-传输层:TCP协议简介

    概述: TCP传输前先要建立连接 TCP在传输层 点对点,一条TCP只能连接两个端点 可靠传输.无差错.不丢失.不重复.按顺序 全双工 字节流 TCP报文段 TCP报文段的报头前20字节是固定的,后面 ...

  8. mongo 查找附近点

    db.runCommand({geoNear:"demo", near: { type: "Point" , coordinates: [118.134535, ...

  9. Repeater控件 ---表格展示数据

    简介: Repeater控件是Web 服务器控件中的一个容器控件,它使您可以从页的任何可用数据中创建出自定义列表. Repeater 控件不具备内置的呈现功能,这表示用户必须通过创建模板为 Repea ...

  10. AngularJS 中设置 AJAX get 请求不缓存的方法

    var app = angular.module('manager', ['ngRoute']); app.config(['$routeProvider', function($routeProvi ...