简体   繁体   English

JDK 8的Drools 5.6版本

[英]Drools 5.6 version with JDK 8

I am trying to upgrade my existing application running on JDK 7 to 8. My current version of drools is 5.6.0 Final version which does not work with JDK8 due to JDT Core Batch Compiler version 3.5.1 compatibility issues. 我正在尝试将在JDK 7上运行的现有应用程序升级到8。由于JDT Core Batch Compiler版本3.5.1的兼容性问题,当前的drools版本是5.6.0最终版本,不适用于JDK8。 The stack trace throws "org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException” – which clearly indicates that the exception is thrown by a class file reader when encountering an error in decoding information contained in a .class file 堆栈跟踪会引发“ org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException” –清楚地表明,当在解码.class文件中包含的信息时遇到错误时,类文件读取器会抛出该异常

We upgraded the ecj library to 4.6.1 and we dont see the issue anymore but we see a different error during runtime. 我们将ecj库升级到4.6.1,我们不再看到该问题,但是在运行时看到了一个不同的错误。

Rule Compilation error : [Rule name='Duplicate team entries for overlapping time period are not allowed - Team'] com/company/abc/athena/services/validation/Rule_Duplicate_team_entries_for_overlapping_time_period_are_not_allowed_$u45$_Team1529838393.java (2:102) : Only a type can be imported. 规则编译错误:[规则名称='不允许重叠时间段的重复团队输入-团队'] com / company / abc / athena / services / validation / Rule_Duplicate_team_entries_for_overlapping_time_period_are_not_allowed_ $ u45 $ _Team1529838393.java(2:102):仅a类型可以导入。 com.company.abc.athena.services.validation.TeamValidationMessage resolves to a package com.company.abc.athena.services.validation.TeamValidationMessage解析为包

I was able to resolve the issue. 我能够解决问题。 The upgraded ecj library was conflicting with the tomcat's ecj 4.3.1 library. 升级的ecj库与tomcat的ecj 4.3.1库冲突。 I removed the maven dependency for ecj from my app and used the Tomcat's ecj library and that resolved the issue. 我从应用程序中删除了ecj的maven依赖关系,并使用了Tomcat的ecj库,从而解决了该问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM