以下依赖项适用于 jasperreport
<dependency>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports</artifactId>
<version>3.7.2</version>
</dependency>
上述依赖项会导致包含 jdtcore
jar 包含。
然后我对 drools-spring 有以下依赖
<dependency>
<groupId>org.drools</groupId>
<artifactId>drools-spring</artifactId>
<version>5.6.0.Final</version>
</dependency>
这包括ecj
jar。
现在 ecj 和 jdtcore 的 java 文件 org.eclipse.jdt.internal.compiler.CompilationResult
版本不同,因此会导致运行时异常。
如何解决这些依赖冲突。
最佳答案
您需要升级 jasperreport
版本,或者如果无法升级,则排除 jdtcore
并包含较新版本的 jdtcore
,如下所示:
<dependency>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports</artifactId>
<exclusions>
<exclusion>
<groupId>eclipse</groupId>
<artifactId>jdtcore</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>eclipse</groupId>
<artifactId>jdtcore</artifactId>
<version>3.2.0.v_658</version>
</dependency>
在此之后从 drools-spring 中排除 ecj
jar
<dependency>
<groupId>org.drools</groupId>
<artifactId>drools-spring</artifactId>
<version>5.6.0.Final</version>
<exclusions>
<exclusion>
<groupId>org.eclipse.jdt.core.compiler</groupId>
<artifactId>ecj</artifactId>
</exclusion>
</exclusions>
</dependency>
这将解决类冲突
关于java - Drools Spring 与 Jasper Report 导致 CompilationResult 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48364005/