我正在开发码头服务,启动它时,我得到了很多:
SomeClass scanned from multiple locations: jar: jar1!Someclass.class, jar2!Someclass.class
所以一个类由两个 jars 提供,而我在运行时得到的是未定义的,这不好。查看其他问题,我发现tattletale可以帮助诊断问题。该报告在Multiple Jar files部分列出了启动时与 jetty 相同的类以及它们所在的 jar。冲突的一个子集是:
看着
mvn dependency:tree -D verbose
我得到:
+- ca.uhn.hapi.fhir:hapi-fhir-jpaserver-base:jar:3.7.0:compile
| | ...
| +- org.jscience:jscience:jar:4.3.1:compile
| | \- org.javolution:javolution:jar:5.2.3:compile
因此,似乎我的 fhir-base-jpaserver-base 依赖项拉动了拉动 javolution 的 jscience。但是 jscience 和 javolution 提供了一些相同的类。不存在对 javolution 的其他依赖。
我的问题是,我该如何解决这个问题?
我可以在 pom.xml 中做一些事情,但我认为 jscience 需要 javolution,并且可能会中断?