SAXBuilder builder = new SAXBuilder(false);
Document doc = builder.build(configURI);
configURI是String类型
运行到Document doc = builder.build(configURI);就出错org.jdom.JDOMException: Error in building: Class org.jdom.input.SAXBuilder can n
ot access a member of class gnu.xml.aelfred2.JAXPFactory$JaxpParser with modifie
rs "public"
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:411)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:464)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:445)
at JDomParse.<init>(JDomParse.java:16)
at JDomParse.main(JDomParse.java:40)
Root cause: java.lang.IllegalAccessException: Class org.jdom.input.SAXBuilder ca
n not access a member of class gnu.xml.aelfred2.JAXPFactory$JaxpParser with modi
fiers "public"
at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
at java.lang.reflect.Method.invoke(Method.java:578)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:295)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:464)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:445)
at JDomParse.<init>(JDomParse.java:16)
at JDomParse.main(JDomParse.java:40)
Document doc = builder.build(configURI);
configURI是String类型
运行到Document doc = builder.build(configURI);就出错org.jdom.JDOMException: Error in building: Class org.jdom.input.SAXBuilder can n
ot access a member of class gnu.xml.aelfred2.JAXPFactory$JaxpParser with modifie
rs "public"
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:411)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:464)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:445)
at JDomParse.<init>(JDomParse.java:16)
at JDomParse.main(JDomParse.java:40)
Root cause: java.lang.IllegalAccessException: Class org.jdom.input.SAXBuilder ca
n not access a member of class gnu.xml.aelfred2.JAXPFactory$JaxpParser with modi
fiers "public"
at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:65)
at java.lang.reflect.Method.invoke(Method.java:578)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:295)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:464)
at org.jdom.input.SAXBuilder.build(SAXBuilder.java:445)
at JDomParse.<init>(JDomParse.java:16)
at JDomParse.main(JDomParse.java:40)
SAXBuilder sb = new SAXBuilder();
Document doc = null;
try {
doc = sb.build("c:\\test.xml");
} catch (JDOMException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
Document doc = builder.build(new File(configURI));
try { SAXBuilder builder = new SAXBuilder();
Document doc = builder.build(new File(configURI));
Element foo = doc.getRootElement();
List allChildren = foo.getChildren();
for(int i=0;i<allChildren.size();i++) {
System.out.print(((Element)allChildren.get(i)).getChild("节点名字").getText());
}
} catch (Exception e) {
e.printStackTrace();
}
Document doc = builder.build(new URL(configURI));在java里URL可不是String类型,build(String)的方法接受的是xml原码,build(URL)才会自动适用网络获取源码,这个问题我也碰到过,不过是很久以前了。