2012-10-17 7 views
8

Ich habe dom4j-1.6.1 heruntergeladen und es zu Java Build-Pfad hinzugefügt. Ich bin auch vertraut mit java.lang.NoClassDefFoundError: org/saxpath/SAXPathException, aber ich bekomme immer eine Ausnahme.Java dom4j org/jaxen/NamespaceContext Ausnahme

einen Ausschnitt Beiliegend:

public class Parser { 
    public static void parse(final String path) throws Exception { 
     final SAXReader reader = new SAXReader(); 
     final Document document = reader.read(new File(path).toURI().toURL()); 
     if (document == null) return; 
     List list = document.selectNodes("/"); 
     for (Object o : list) 
      System.out.println(o); 
    } 
} 

Wenn ich es laufen, bekomme ich die folgende Stack-Trace

Exception in thread "main" java.lang.NoClassDefFoundError: org/jaxen/NamespaceContext 
    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 Parser.parse(Parser.java:15) 
    at Main.main(Main.java:6) 
Caused by: java.lang.ClassNotFoundException: org.jaxen.NamespaceContext 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356) 
    ... 5 more 

Jede Ahnung, was den Fehler verursacht?

Antwort

17

Die Ausnahme:

java.lang.ClassNotFoundException: org.jaxen.NamespaceContext 

Vielleicht haben Sie vergessen die jaxen.jar in Ihrer Java-Build-Pfad zu enthalten.

Weitere spezifische Anweisungen zur Verwendung von SAXReader einige XML und Schleife durch die Knoten zu analysieren: https://stackoverflow.com/a/24959790/445131

+2

Hier ist ein Link zu Jaxen Abhängigkeit Snipets für Ihre Pom, etc .: http://mvnrepository.com/artifact/jaxen/jaxen/1.1.1 – Jim

2

die Lösung gefunden werden. Ich musste herunterladen und jaxen in Java Build-Pfad enthalten.