首先,我指的是这个问题(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依赖项,正如我在一开始提到的帖子中所述,但没有成功。
有人知道这个问题的解决方案是什么吗?
Btw全栈跟踪是:
| 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。类位于jar jaxb xjc中。JAXB发行版附带的jar。通常是javax。xml。bind和xjc工具可以通过JDK和Java二进制文件获得。但是,如果某个应用程序需要通过其API调用XML模式编译器,那么jar中包含的各个类必须可用。
我读过很多关于Drools Guvnor和Drools Planner互动的东西。创建和更改规则是非常有用的,而不需要对它们进行编码。但我读过Guvnor是一个WebApplication。
Vaadin已经有了7.5.8版,但是插件似乎使用了7.5.2版(https://grails.org/plugin/vaadin).我有没有办法得到最新版本的Vaadin?
我刚刚从SVN下载了一个grails项目。 我看到不受支持的Major.Minor版本是S.O.上的一个众所周知的问题。由于运行时和编译时使用的JDK版本不匹配而导致。 但我使用的是与下面相同的版本: 外壳: JAVA构建路径: 请告诉我,我错过了什么,仍然有下面的错误? 我通过右键单击Project->Run-as->grailsCommand(run-app)来运行它
目前我正在使用ApacheBeam2.18。GCP(数据流)中的0,我想将其更新为2.20。0 问题是,如果我使用2.20,我会出现以下错误。0而不是2.18。我的pom文件中的0: 我已经看到了其他类似的问题,但我看不到任何与apache梁的关系。 我应该添加或删除哪个依赖项? 这是我的pom文件的样子: 如果我排除以下内容: 关于依赖项的错误消失了,但是,如果我这样做,我将无法完成项目的编译,
我在一个按钮上有一个ussd代码。我在清单中添加了CALL_PHONE权限。我使用sdk版本(23)。此代码不能正常工作。 基本上我该怎么做?谢谢。 我有以下错误: ?e/AndroidRuntime:致命异常:主进程:com.mahdishekari.MyCollectBill,PID:31738 java.lang.SecurityException:权限拒绝:从ProcessRecord{4
electron-vue 自 2016年5月初 创建以来有了很大的发展,并引入了许多新奇的功能。你能相信有一段时间该项目还不支持 vue-cli 脚手架吗?新功能的开发计划不会停止。唯一的缺点是,每天都有华而不实的东西存在,进而把你的项目卡在一个老的脚手架上。尽管 electron-vue 利用了 vue-cli 的优势,遗憾的是,并没有一个结构化的方式来 版本化 (version) 样板 或 使