Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 解决;“多个Jar文件”;又名;从多个位置扫描”;_Java_Maven_Jetty_Hapi Fhir_Tattletale - Fatal编程技术网

Java 解决;“多个Jar文件”;又名;从多个位置扫描”;

Java 解决;“多个Jar文件”;又名;从多个位置扫描”;,java,maven,jetty,hapi-fhir,tattletale,Java,Maven,Jetty,Hapi Fhir,Tattletale,我正在从事码头服务,启动时,我得到很多: SomeClass从多个位置扫描:jar:jar1!什么课,什么课,jar2!Someclass.class 所以一个类由两个JAR提供,我在运行时得到的是未定义的,这是不好的。查看其他问题,我发现tattletale可以帮助诊断问题。该报告在多个Jar文件部分列出了启动时与jetty相同的类,以及它们所在的Jar。 冲突的一个子集是: 看着 mvn dependency:tree -D verbose 我得到: +- ca.uhn.hapi.fhi

我正在从事码头服务,启动时,我得到很多:

SomeClass从多个位置扫描:jar:jar1!什么课,什么课,jar2!Someclass.class

所以一个类由两个JAR提供,我在运行时得到的是未定义的,这是不好的。查看其他问题,我发现tattletale可以帮助诊断问题。该报告在多个Jar文件部分列出了启动时与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基jpaserver基依赖关系似乎吸引了jscience,而jscience吸引了javolution。但是jscience和javolution提供了一些相同的类。不存在对javolution的其他依赖关系

我的问题是,我该如何着手解决这个问题


我可以在pom.xml中做一些事情,但我想jscience需要解决,可能会崩溃?

听起来像是jscience中的一个bug,他们如何打包他们的jar,可能想向他们提出一个问题

他们要么

  • 有一个适当的/集中的jar和依赖项
  • 或者是一个没有依赖关系的独立uber jar
不要混淆这两个概念

同时,只需使用
/
排除导致重复类的特定可传递依赖项


此外,您可能希望运行各种重复的类/资源检查器maven插件,以查找项目中可能存在的任何其他案例。

如果jscience中有javolution类,请查看这两个JAR的内容,那么它就不需要javolution.jar文件了。@JoakimErdfelt:看来所有的javolution都在jscience jar中。对我来说,依赖某样东西然后又把它包括进去是没有任何意义的。这里可以看到依赖性:您是否建议我尝试使用一些mvn魔术来排除javolution?