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

要解析一个XML文件,如下进行解析 

 

	public static void main(String[] args) throws Exception {
		String xmlpath = DomParse.class.getResource("blackhawk.xml").toString();
		SAXReader reader = new SAXReader();
		Document document = reader.read(xmlpath);
		List projects = document.selectNodes("/blackhawk/disk/uploadPath");
		Iterator it = projects.iterator();
		while (it.hasNext()) {
			Element elm = (Element) it.next();
			System.out.println(elm.getText());
		}
	}

 

 

使用dom4j时报错 

	java.lang.NoClassDefFoundError: org/jaxen/JaxenException 
	at org.dom4j.DocumentFactory.createXPath(DocumentFactory.java:196) 
	at org.dom4j.tree.AbstractNode.createXPath(AbstractNode.java:205) 
	at org.dom4j.tree.AbstractNode.selectNodes(AbstractNode.java:161) 
	at xml.Dom4jDemo.readTest(Dom4jDemo.java:223) 
	at xml.Dom4jDemo.main(Dom4jDemo.java:188) 

 

 

 

 

很简单是没有找到类,可是使用dom4j只需一个包,怎么会缺类呢

原来

List projects = document .selectNodes("/blackhawk/disk/uploadPath"); 

 

 

 

 

其实这里我使用了XPath进行定位查询节点,而Xpath其实不是dom4j的东西,而是一个标准,使用它需要进入如下两个包

  jaxen-full.jar  
      saxpath.jar

这样才可以使用XPath

可是令我郁闷的是,既然你dom4j是解析xml的,而XPath是如此重要的一个东西,你对它支持的又是如此的好,可你的官方包里为什就是没有加入这两个包呢?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值