前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于dom4j解析XML的问题分享

关于dom4j解析XML的问题分享

作者头像
用户7053485
发布2020-03-19 18:29:25
5510
发布2020-03-19 18:29:25
举报
文章被收录于专栏:Kitty的日常笔记

最近在在做个程序需要将C#小工具转成java,因为需要涉及到操作xml文件所以需要引用dom4j;

使用dom4j解析XML时,要快速获取某个节点的数据,使用XPath是个不错的方法,dom4j的快速手册里也建议使

用这种方式,标题都写的这么阔气:Powerful Navigation with XPath。

方法是使用Document的selectNodes(String XPath)方法,代码写法:

List<?> list = document.selectNodes("/books/book");

执行时却抛出以下异常:

Exception in thread "main" 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)

这么好用的方法怎么能抛异常呢,一路跟踪过去看,竟然是“List l = doc.selectNodes("//COLS/COL1");”

这句报错,查了一下才知道,不光要有dom4j这个包,还要有jaxen 包:<jaxen-1.1-beta-6.jar>-238 KB,这

应该是dom4j的基础包,在dom4j的zip包的lib目录里可以找到。即使用这个方法需要以下两个包:

dom4j-1.6.1.jar jaxen-1.1.2.jar

需要下载这个jaxen-1.1.2.jar包的可以去下面链接下载:

百度网盘链接:https://pan.baidu.com/s/1oMOUMTppBl-Qu4da69kgeA 提取码:grbn

ok,今天的分享就到这里了,有疑问的欢迎留言探讨!!!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-07-18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档