【发布时间】:2013-04-15 18:33:53
【问题描述】:
我尝试使用 Java jdk 1.7u17 在 Linux Mint 64 位 (Debian) 上运行 apache-james-3.0-beta4 服务器,但由于 JAXB 库错误,它无法正常工作。根据文档,应下载不同的 jar 文件(http://jaxb.java.net/2.1.13/JAXB2_20100510.jar)并放入 conf/lib 目录。我这样做了,但问题仍然存在。当我切换到 jdk 1.6 时,一切都开始正常了。
有人解决了这个问题吗?
这是堆栈跟踪的一部分:
INFO 19:45:24,669 | org.apache.james.container.spring.context.JamesServerApplicationContext | Refreshing org.apache.james.container.spring.context.JamesServerApplicationContext@11641923: startup date [Mon Apr 22 19:45:24 CEST 2013]; root of context hierarchy
Exception in thread "main" org.springframework.beans.factory.BeanDefinitionStoreException: Failed to create the JAXB binder; nested exception is javax.xml.bind.JAXBException: Provider com.sun.xml.internal.bind.v2.ContextFactory could not be instantiated: com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
Class has two properties of the same name "outputs"
this problem is related to the following location:
at public java.util.List org.apache.camel.model.ResequenceDefinition.getOutputs()
at org.apache.camel.model.ResequenceDefinition
this problem is related to the following location:
at private java.util.List org.apache.camel.model.ResequenceDefinition.outputs
at org.apache.camel.model.ResequenceDefinition
- with linked exception:
[com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
Class has two properties of the same name "outputs"
this problem is related to the following location:
at public java.util.List org.apache.camel.model.ResequenceDefinition.getOutputs()
at org.apache.camel.model.ResequenceDefinition
this problem is related to the following location:
at private java.util.List org.apache.camel.model.ResequenceDefinition.outputs
at org.apache.camel.model.ResequenceDefinition
]
...
【问题讨论】:
-
我没有遇到过 James 的这个问题(但我已经形成了 JBoss 的观点),要解决这个问题,您必须在任何通配符之前在类路径中明确声明 JAR 文件。也许这会有所帮助
-
看来下个beta5版本会修复issues.apache.org/jira/browse/JAMES-1450
-
不,beta5-854 也不起作用。不过堆栈跟踪不同。