首页 > 解决方案 > 使用 wildfly16 升级到 jdk7 到 jdk11 时,流口水不起作用

问题描述

您好我有以下配置:

java version-jdk11
server-wildfly16
jars-drools 6.0 and ecj 4.6.1

在服务器位置:C:\wildfly-16.0.0.Final\modules\org\eclipse\jdt\main

我有罐子:jasper-jdt-6.0.29 有一只耳朵。但是在部署我的应用程序后,当我检查规则时会打开,所以 drls 不起作用。我得到以下错误..

/servlet/com.fourcs.clm.iwarranty.eclaims.dataview.servlets.ClaimSearchServlet
Path Info:null
Query String:null
Stack Trace:
java.lang.NoSuchFieldError: compilation_beginningToCompile
    at deployment.CLMEAR.ear//org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:428)
    at deployment.CLMEAR.ear//org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:417)
    at deployment.CLMEAR.ear//org.drools.compiler.commons.jci.compilers.EclipseJavaCompiler.compile(EclipseJavaCompiler.java:405)
    at deployment.CLMEAR.ear//org.drools.compiler.commons.jci.compilers.AbstractJavaCompiler.compile(AbstractJavaCompiler.java:49)
    at deployment.CLMEAR.ear//org.drools.compiler.rule.builder.dialect.java.JavaDialect.compileAll(JavaDialect.java:405)
    at deployment.CLMEAR.ear//org.drools.compiler.compiler.DialectCompiletimeRegistry.compileAll(DialectCompiletimeRegistry.java:46)
    at deployment.CLMEAR.ear//org.drools.compiler.compiler.PackageRegistry.compileAll(PackageRegistry.java:110)
    at deployment.CLMEAR.ear//org.drools.compiler.compiler.PackageBuilder.compileAll(PackageBuilder.java:1334)
    at deployment.CLMEAR.ear//org.drools.compiler.compiler.PackageBuilder.compileRules(PackageBuilder.java:1058)
    at deployment.CLMEAR.ear//org.drools.compiler.compiler.PackageBuilder.compileAllRules(PackageBuilder.java:972)

我尝试将 jar 版本升级ecj 4.3.1到,4.6.1但也没有用。

如何解决此错误。任何想法?

标签: droolsjava-11

解决方案


如果您查看 drools 使用论坛,您会发现 Drools 不适用于 JDK11。Drools 6 适用于 JDK7,但该版本是 2013 年的。最新的 Drools 版本 (7.X) 适用于带有 JDK8 的 WildFly 10 到 14。


推荐阅读