Java Drools Spring与Jasper报告导致编译结果冲突
下面是jasperreport的依赖项Java Drools Spring与Jasper报告导致编译结果冲突,java,spring,drools,Java,Spring,Drools,下面是jasperreport的依赖项 <dependency> <groupId>net.sf.jasperreports</groupId> <artifactId>jasperreports</artifactId> <version>3.7.2</version> </dependency> 这包括ecjjar 现在ecj和jdtcore有不同版本的java文件org
<dependency>
<groupId>net.sf.jasperreports</groupId>
<artifactId>jasperreports</artifactId>
<version>3.7.2</version>
</dependency>
这包括ecj
jar
现在ecj和jdtcore有不同版本的java文件org.eclipse.jdt.internal.compiler.compileationresult
,因此会导致运行时异常
如何解决这些依赖冲突。您需要升级
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>
这将解决类冲突对于上述冲突,我必须更新jdtcore版本,并从drools中排除ECJJAR。这对我来说很有效
<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>
<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>