我在我的开发环境中不断收到以下错误。我用
Ivy 用于依赖管理,其中我包括以下内容
<!-- 3rd party dependencies -->
<dependency org="log4j" name="log4j" rev="1.2.16" conf="test->default"/>
<dependency org="commons-httpclient" name="commons-httpclient" rev="3.1" conf="compile->default"/>
<dependency org="org.jvnet.jaxb2_commons" name="jaxb2-basics-runtime" rev="0.6.4" conf="default->runtime"/>
<dependency org="org.jvnet.jaxb2_commons" name="jaxb2-basics-tools" rev="0.6.4" conf="default->runtime"/>
<dependency org="org.jvnet.jaxb2_commons" name="jaxb2-basics" rev="0.6.4" conf="default->runtime"/>
Run Code Online (Sandbox Code Playgroud)我看过有关此主题的其他帖子,但他们的答案没有多大帮助。我尝试使用 jaxb.properties 但这并没有改变行为。
javax.xml.bind.context.factory=com.sun.tools.xjc.runtime.JAXBContextFactory
Exception in thread "main" javax.xml.bind.JAXBException
- with linked exception:
[java.lang.ClassNotFoundException: com.ibm.xml.xlxp2.jaxb.JAXBContextFactory]
at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:227)
at javax.xml.bind.ContextFinder.find(ContextFinder.java:432)
at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:637)
at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:584)
at com.acme.merge.util.ProjectsInformation.unMarshal(ProjectsInformation.java:24)
at com.acme.merge.controller.MergeController.main(MergeController.java:44)
Caused by: java.lang.ClassNotFoundException: com.ibm.xml.xlxp2.jaxb.JAXBContextFactory
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:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at javax.xml.bind.ContextFinder.safeLoadClass(ContextFinder.java:563)
at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:225)
... 5 more
Run Code Online (Sandbox Code Playgroud)
我在忽略什么?
我找到了根本原因。我在 ivy 中的一些依赖项具有传递依赖项,这些依赖项引入了一些 IBM WS 库。这些库会覆盖我的设置并强制使用com.ibm.xml.xlxp2.jaxb.JAXBContextFactory. 排除这些解决了我的问题。
冲突的 jar 来自包com.ibm.ws,名为runtime.jar.
| 归档时间: |
|
| 查看次数: |
5700 次 |
| 最近记录: |