Is there documentation on how to do this, including a full example. I saw the pom file, but still don't know the run/compile targets?
2010/4/22 Greg Barton <[email protected]> > Have you ever thought of using maven? Your problem is no doubt with > including the transitive dependencies of the drools libraries, which maven > would do for you automatically. Here are the jars that were included > automatically in a project I compiled with drools-core, drools-compiler, > drools-api, all 5.0.1: > > antlr-runtime-3.1.1.jar > core-3.4.2.v_883_R34x.jar > > drools-api-5.0.1.jar > drools-compiler-5.0.1.jar > drools-core-5.0.1.jar > janino-2.5.15.jar > joda-time-1.6.jar > jsap-2.1.jar > mvel2-2.0.10.jar > > This resulted from a dependencies section in the maven pom that had just > this in it: > > <dependencies> > <dependency> > <groupId>org.drools</groupId> > <artifactId>drools-core</artifactId> > <version>5.0.1</version> > </dependency> > <dependency> > <groupId>org.drools</groupId> > <artifactId>drools-compiler</artifactId> > <version>5.0.1</version> > </dependency> > <dependency> > <groupId>org.drools</groupId> > <artifactId>drools-api</artifactId> > <version>5.0.1</version> > </dependency> > </dependencies> > > So I suggest you give maven a try. It makes this easy. :) > > --- On *Wed, 4/21/10, Berlin Brown <[email protected]>* wrote: > > > From: Berlin Brown <[email protected]> > Subject: [rules-users] Very basic running of drools 5, basic setup and > quickstart > To: [email protected] > Date: Wednesday, April 21, 2010, 12:54 AM > > > Is there a more comprehensive quick start for drools 5. I was attempting > to run the simple Hello World .drl rule but I wanted to do it through an ant > script, possibly with just javac/java: > > I get the following error: Note: I don't am running completely without > Eclipse or any other IDE: > > test: > [java] Exception in thread "main" org.drools.RuntimeDroolsException: > Unable to load d > ialect > 'org.drools.rule.builder.dialect.java.JavaDialectConfiguration:java:org.drools.rule > .builder.dialect.java.JavaDialectConfiguration' > [java] at > org.drools.compiler.PackageBuilderConfiguration.addDialect(PackageBuild > erConfiguration.java:274) > [java] at > org.drools.compiler.PackageBuilderConfiguration.buildDialectConfigurati > onMap(PackageBuilderConfiguration.java:259) > [java] at > org.drools.compiler.PackageBuilderConfiguration.init(PackageBuilderConf > iguration.java:176) > [java] at > org.drools.compiler.PackageBuilderConfiguration.<init>(PackageBuilderCo > nfiguration.java:153) > [java] at > org.drools.compiler.PackageBuilder.<init>(PackageBuilder.java:242) > [java] at > org.drools.compiler.PackageBuilder.<init>(PackageBuilder.java:142) > [java] at > org.drools.builder.impl.KnowledgeBuilderProviderImpl.newKnowledgeBuilde > r(KnowledgeBuilderProviderImpl.java:29) > [java] at > org.drools.builder.KnowledgeBuilderFactory.newKnowledgeBuilder(Knowledg > eBuilderFactory.java:29) > [java] at org.berlin.rpg.rules.Rules.rules(Rules.java:33) > [java] at org.berlin.rpg.rules.Rules.main(Rules.java:73) > [java] Caused by: java.lang.RuntimeException: The Eclipse JDT Core jar > is not in the > classpath > [java] at > org.drools.rule.builder.dialect.java.JavaDialectConfiguration.setCompil > er(JavaDialectConfiguration.java:94) > [java] at > org.drools.rule.builder.dialect.java.JavaDialectConfiguration.init(Java > DialectConfiguration.java:55) > [java] at > org.drools.compiler.PackageBuilderConfiguration.addDialect(PackageBuild > erConfiguration.java:270) > [java] ... 9 more > [java] Java Result: 1 > > ... > ... > > I do include the following libraries with my javac and java target: > > <path id="classpath"> > <pathelement location="${lib.dir}" /> > <pathelement location="${lib.dir}/drools-api-5.0.1.jar" /> > <pathelement location="${lib.dir}/drools-compiler-5.0.1.jar" /> > <pathelement location="${lib.dir}/drools-core-5.0.1.jar" /> > <pathelement location="${lib.dir}/janino-2.5.15.jar" /> > </path> > > Here is the Java code that is throwing the error. I commented out the > java.compiler code, that didn't work either. > > public void rules() { > > /* > final Properties properties = new Properties(); > properties.setProperty( "drools.dialect.java.compiler", "JANINO" > ); > PackageBuilderConfiguration cfg = new PackageBuilderConfiguration( > properties ); > JavaDialectConfiguration javaConf = (JavaDialectConfiguration) > cfg.getDialectConfiguration( "java" ); > */ > final KnowledgeBuilder kbuilder = > KnowledgeBuilderFactory.newKnowledgeBuilder(); > > // this will parse and compile in one step > kbuilder.add(ResourceFactory.newClassPathResource("HelloWorld.drl", > Rules.class), ResourceType.DRL); > > // Check the builder for errors > if (kbuilder.hasErrors()) { > System.out.println(kbuilder.getErrors().toString()); > throw new RuntimeException("Unable to compile > \"HelloWorld.drl\"."); > } > > // Get the compiled packages (which are serializable) > final Collection<KnowledgePackage> pkgs = > kbuilder.getKnowledgePackages(); > > // Add the packages to a knowledgebase (deploy the knowledge > packages). > final KnowledgeBase kbase = > KnowledgeBaseFactory.newKnowledgeBase(); > kbase.addKnowledgePackages(pkgs); > > final StatefulKnowledgeSession ksession = > kbase.newStatefulKnowledgeSession(); > ksession.setGlobal("list", new ArrayList<Object>()); > > ksession.addEventListener(new DebugAgendaEventListener()); > ksession.addEventListener(new DebugWorkingMemoryEventListener()); > > // Setup the audit logging > KnowledgeRuntimeLogger logger = > KnowledgeRuntimeLoggerFactory.newFileLogger(ksession, "log/helloworld"); > > final Message message = new Message(); > message.setMessage("Hello World"); > message.setStatus(Message.HELLO); > ksession.insert(message); > > ksession.fireAllRules(); > logger.close(); > ksession.dispose(); > } > > ... > > Here I don't think Ant is relevant because I have fork set to true: > > <target name="test" depends="compile"> > <java classname="org.berlin.rpg.rules.Rules" fork="true"> > <classpath refid="classpath.rt" /> > <classpath> > <pathelement location="${basedir}" /> > <pathelement location="${build.classes.dir}" /> > </classpath> > </java> > </target> > > > > The error is thrown at line 1. > > Basically, I haven't done anything except call > > final KnowledgeBuilder kbuilder = > KnowledgeBuilderFactory.newKnowledgeBuilder(); > > I am running with Windows XP, Java6, and within Ant.1.7. > > > > > > -- > Berlin Brown (berlin dot brown at gmail.com) > http://botnode.com > http://berlinbrowndev.blogspot.com/ > > -----Inline Attachment Follows----- > > > _______________________________________________ > rules-users mailing list > [email protected]<http://mc/[email protected]> > https://lists.jboss.org/mailman/listinfo/rules-users > > > > _______________________________________________ > rules-users mailing list > [email protected] > https://lists.jboss.org/mailman/listinfo/rules-users > > -- Berlin Brown (berlin dot brown at gmail.com) http://botnode.com http://berlinbrowndev.blogspot.com/
_______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users
