繁体   English   中英

如何在没有eclipse JDT库的情况下使用drools

[英]How to use drools without eclipse JDT library

最近我在日食中使用了Drools。 当我运行程序时,有一个例外:

org.drools.RuntimeDroolsException:无法在org.drools.compiler.PackageBuilderConfiguration中加载方言'org.drools.rule.builder.dialect.java.JavaDialectConfiguration:java:org.drools.rule.builder.dialect.java.JavaDialectConfiguration'。 addDialect(PackageBuilderConfiguration.java:310)位于org.drools.compiler.PackageBuilder配置的org.drools.compack.PackageBuilder.fildDialectConfiguration.PitageBuilderConfiguration.init(PackageBuilderConfiguration.java:184)org.drools.compiler.PackageBuilderConfiguration.buildDialectConfigurationMap(PackageBuilderConfiguration.java:295) 。(PackageBuilderConfiguration.java:162)org.drools.compiler.PackageBuilder。(PackageBuilder.java:277)org.drools.compiler.PackageBuilder。(PackageBuilder.java:205)org.drools.builder.impl.KnowledgeBuilderFactoryServiceImpl .newKnowledgeBuilder(KnowledgeBuilderFactoryServiceImpl.java:34)位于com.adsc.cybersage.rules.DroolEngineInit.readKnowledg的org.drools.builder.KnowledgeBuilderFactory.newKnowledgeBuilder(KnowledgeBuilderFactory.java:46) eBase(DroolEngineInit.java:48)at com.adsc.cybersage.rules.DroolEngineInit.initializeDrools(DroolEngineInit.java:32)

我在网上搜索,发现这是因为我没有添加eclipse JDT库org.eclipse.jdt.core.jar,然后我添加这个jar并且该程序运行良好。 但我不想添加eclipse JDT Library,因为它的许可证是严格的。 那么有没有我可以使用的非严格许可证的替代罐子?

我正在编译并运行没有org.eclipse.jdt.core.jar的Drools,从命令行调用javac和java(实际上是一个shell脚本)。

PROTOBUF=protobuf-java-2.4.1.jar 
root=/extra/drools-distribution-5.5.0.Final/binaries
tag=5.5.0.Final
export CLASSPATH=".:$root/drools-core-${tag}.jar:$root/knowledge-api-${tag}.jar:$root/knowledge-internal-api-${tag}.jar:$root/drools-compiler-${tag}.jar:$root/antlr-2.7.7.jar:$root/antlr-3.3.jar:$root/antlr-runtime-3.3.jar:$root/ecj-3.5.1.jar:$root/mvel2-2.1.3.Final.jar:/extra/quartz-1.8.3/quartz-1.8.3.jar:$root/drools-decisiontables-${tag}.jar:$root/drools-templates-${tag}.jar:$root/xstream-1.4.1.jar:$root/jxl-2.6.10.jar:$root/slf4j-api-1.6.4.jar:$root/$PROTOBUF"

然后调用javac和java。

当然,当你在Eclipse中运行时,你可能确实需要Eclipse的东西。 您可以在Eclipse下开发和测试,然后使用上述技术编译DRL并执行您的应用程序。

暂无
暂无

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

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