gpt4 book ai didi

java - 新版本 Grails 中出现 Drools 异常

转载 作者:行者123 更新时间:2023-11-30 03:37:10 27 4
gpt4 key购买 nike

首先,我指的是这个问题( LINK ),它对我没有帮助,因为当时框架的版本较低,所以我开始新问题。

所以我正在使用 Grails 2.4.3 框架并尝试在其中使用 Drools 规则引擎。Java版本是1.0.8_20,groovy版本是2.3.9。BuildConfig 中的依赖项是:

runtime 'org.drools:drools-core:5.5.0.Final'
runtime 'org.drools:knowledge-api:5.5.0.Final'

在这行代码中:

KnowledgeBuilder knowledgeBuilder = KnowledgeBuilderFactory.newKnowledgeBuilder()

我得到这个异常:

Error initializing the application: com/sun/tools/xjc/Options
Caused by ClassNotFoundException: com.sun.tools.xjc.Options

我尝试将 drools-core/knowledge-api 的版本更改为更高版本(最高 6.0.1.Final),但不断收到相同的错误。我还尝试导入这个奇怪的 xjc 依赖项,如我在开始时提到的帖子中提到的,但没有成功。

谁知道这个问题的解决办法是什么?

顺便说一句,完整的堆栈跟踪是:

| Error 2014-12-19 18:04:49,851 [localhost-startStop-1] ERROR context.GrailsContextLoaderListener  - Error initializing Grails: com/sun/tools/xjc/Options
Message: com/sun/tools/xjc/Options
Line | Method
->> 2688 | privateGetDeclaredMethods in java.lang.Class
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| 1962 | getDeclaredMethods in ''
| 46 | getLocked . . . . . . . . . . . in org.codehaus.groovy.util.LazyReference
| 33 | get in ''
| 46 | doCall . . . . . . . . . . . . . in account.manager.rule.knowledge.Knowledge$_initialize_closure1
| 43 | initialize in account.manager.rule.knowledge.Knowledge
| 39 | $tt__initialize . . . . . . . . in account.manager.RuleSyncService
| 24 | doCall in BootStrap$_closure1
| 327 | evaluateEnvironmentSpecificBlock in grails.util.Environment
| 320 | executeForEnvironment in ''
| 296 | executeForCurrentEnvironment . . in ''
| 266 | run in java.util.concurrent.FutureTask
| 1142 | runWorker . . . . . . . . . . . in java.util.concurrent.ThreadPoolExecutor
| 617 | run in java.util.concurrent.ThreadPoolExecutor$Worker
^ 745 | run . . . . . . . . . . . . . . in java.lang.Thread
Caused by ClassNotFoundException: com.sun.tools.xjc.Options

最佳答案

com/sun/tools/xjc/Options.class 位于 JAXB 发行版附带的 jar jaxb-xjc.jar 中。通常,javax.xml.bind 和 xjc 工具可通过 JDK 和 Java 二进制文件获得。但是,如果某些应用程序需要通过其 API 调用 XML 架构编译器,则该 jar 中包含的各个类必须可用。

关于java - 新版本 Grails 中出现 Drools 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27570133/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com