我在Eclipse中使用JDK 1.8到Unmarshaller xml到Java。这行抛出
JAXBContext jc = JAXBContext.newInstance("com.dtd");
javax.xml.bind.JAXBException: Provider com.sun.xml.bind.v2.ContextFactory not found
- with linked exception:
[java.lang.ClassNotFoundException: com.sun.xml.bind.v2.ContextFactory]
at javax.xml.bind.ContextFinder.newInstance(Unknown Source)
所有内容都是从jdk1.8加载的。例如:
[从C:\ Program Files \ Java \ jre1.8.0_25 \ lib \ rt.jar加载javax.xml.bind.ContextFinder]
com.sun.xml.bind.v2.ContextFactory在哪里?
答案 0 :(得分:2)
我的classpath中有hive-jdbc-1.1.0-standalone.jar。删除它解决了问题。
答案 1 :(得分:1)
尝试一些事情:
检查类路径中的拼写错误。
尝试添加jaxb impl。 (而不是jaxb-api)
添加包含模块依赖项行的清单文件: 依赖关系:com.sun.xml.bind服务