<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">The best documentation to read would be the maven docs:<br><br>http://maven.apache.org/<br><br>But if you drop the attached pom.xml into a project created by drools' eclipse plugin it'll work fine. type "mvn clean install" from the project home directory and it'll build. (After downloading half the known universe...)<br><br>--- On <b>Thu, 4/22/10, Berlin Brown <i><berlin.brown@gmail.com></i></b> wrote:<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><br>From: Berlin Brown <berlin.brown@gmail.com><br>Subject: Re: [rules-users] Very basic running of drools 5, basic setup and quickstart<br>To: "Rules Users List" <rules-users@lists.jboss.org><br>Date: Thursday, April 22, 2010, 5:11 PM<br><br><div id="yiv2017082983">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?<br><br><div class="gmail_quote">2010/4/22 Greg Barton <span dir="ltr"><<a rel="nofollow" ymailto="mailto:greg_barton@yahoo.com" target="_blank" href="/mc/compose?to=greg_barton@yahoo.com">greg_barton@yahoo.com</a>></span><br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td style="font: inherit;" valign="top">
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:<br>
<br>antlr-runtime-3.1.1.jar<br>core-3.4.2.v_883_R34x.jar<div class="im"><br>drools-api-5.0.1.jar<br></div><div class="im">drools-compiler-5.0.1.jar<br></div><div class="im">drools-core-5.0.1.jar<br></div><div class="im">janino-2.5.15.jar<br>
</div>joda-time-1.6.jar<br>jsap-2.1.jar<br>mvel2-2.0.10.jar<br><br>This resulted from a dependencies section in the maven pom that had just this in it:<br><br><dependencies> <br> <dependency><br> <groupId>org.drools</groupId><br>
<artifactId>drools-core</artifactId><br> <version>5.0.1</version><br> </dependency><br> <dependency><br> <groupId>org.drools</groupId><br> <artifactId>drools-compiler</artifactId><br>
<version>5.0.1</version><br> </dependency><br> <dependency><br> <groupId>org.drools</groupId><br> <artifactId>drools-api</artifactId><br> <version>5.0.1</version><br>
</dependency><br></dependencies> <br><br>So I suggest you give maven a try. It makes this easy. :)<br><br>--- On <b>Wed, 4/21/10,
Berlin Brown <i><<a rel="nofollow" ymailto="mailto:berlin.brown@gmail.com" target="_blank" href="/mc/compose?to=berlin.brown@gmail.com">berlin.brown@gmail.com</a>></i></b> wrote:<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;">
<br>From: Berlin Brown <<a rel="nofollow" ymailto="mailto:berlin.brown@gmail.com" target="_blank" href="/mc/compose?to=berlin.brown@gmail.com">berlin.brown@gmail.com</a>><br>Subject: [rules-users] Very basic running of drools 5, basic setup and quickstart<br>To: <a rel="nofollow" ymailto="mailto:rules-users@lists.jboss.org" target="_blank" href="/mc/compose?to=rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br>
Date: Wednesday, April 21, 2010, 12:54 AM<div><div></div><div class="h5"><br><br><div>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:<br>
<br>I get the following error: Note: I don't am running completely without Eclipse or any other IDE: <br>
<br>test:<br> [java] Exception in thread "main" org.drools.RuntimeDroolsException: Unable to load d<br>ialect 'org.drools.rule.builder.dialect.java.JavaDialectConfiguration:java:org.drools.rule<br>.builder.dialect.java.JavaDialectConfiguration'<br>
[java] at org.drools.compiler.PackageBuilderConfiguration.addDialect(PackageBuild<br>erConfiguration.java:274)<br> [java] at org.drools.compiler.PackageBuilderConfiguration.buildDialectConfigurati<br>onMap(PackageBuilderConfiguration.java:259)<br>
[java] at org.drools.compiler.PackageBuilderConfiguration.init(PackageBuilderConf<br>iguration.java:176)<br> [java] at org.drools.compiler.PackageBuilderConfiguration.<init>(PackageBuilderCo<br>nfiguration.java:153)<br>
[java] at org.drools.compiler.PackageBuilder.<init>(PackageBuilder.java:242)<br> [java] at org.drools.compiler.PackageBuilder.<init>(PackageBuilder.java:142)<br> [java] at org.drools.builder.impl.KnowledgeBuilderProviderImpl.newKnowledgeBuilde<br>
r(KnowledgeBuilderProviderImpl.java:29)<br> [java] at org.drools.builder.KnowledgeBuilderFactory.newKnowledgeBuilder(Knowledg<br>eBuilderFactory.java:29)<br> [java] at org.berlin.rpg.rules.Rules.rules(Rules.java:33)<br>
[java] at org.berlin.rpg.rules.Rules.main(Rules.java:73)<br> [java] Caused by: java.lang.RuntimeException: The Eclipse JDT Core jar is not in the<br>classpath<br> [java] at org.drools.rule.builder.dialect.java.JavaDialectConfiguration.setCompil<br>
er(JavaDialectConfiguration.java:94)<br> [java] at org.drools.rule.builder.dialect.java.JavaDialectConfiguration.init(Java<br>DialectConfiguration.java:55)<br> [java] at org.drools.compiler.PackageBuilderConfiguration.addDialect(PackageBuild<br>
erConfiguration.java:270)<br> [java] ... 9 more<br> [java] Java Result: 1<br clear="all"><br>...<br>...<br><br>I do include the following libraries with my javac and java target:<br><br> <path id="classpath"><br>
<pathelement location="${lib.dir}" /><br> <pathelement location="${lib.dir}/drools-api-5.0.1.jar" /><br> <pathelement location="${lib.dir}/drools-compiler-5.0.1.jar" /><br>
<pathelement location="${lib.dir}/drools-core-5.0.1.jar" /><br> <pathelement location="${lib.dir}/janino-2.5.15.jar" /><br> </path><br><br>Here is the Java code that is throwing the error. I commented out the java.compiler code, that didn't work either.<br>
<br> public void rules() {<br> <br> /*<br> final Properties properties = new Properties(); <br> properties.setProperty( "drools.dialect.java.compiler", "JANINO" ); <br>
PackageBuilderConfiguration cfg = new PackageBuilderConfiguration( properties ); <br> JavaDialectConfiguration javaConf = (JavaDialectConfiguration) <br> cfg.getDialectConfiguration( "java" ); <br>
*/<br> final KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();<br><br> // this will parse and compile in one step<br> kbuilder.add(ResourceFactory.newClassPathResource("HelloWorld.drl", Rules.class), ResourceType.DRL);<br>
<br> // Check the builder for errors<br> if (kbuilder.hasErrors()) {<br> System.out.println(kbuilder.getErrors().toString());<br> throw new RuntimeException("Unable to compile \"HelloWorld.drl\".");<br>
}<br><br> // Get the compiled packages (which are serializable)<br> final Collection<KnowledgePackage> pkgs = kbuilder.getKnowledgePackages();<br><br> // Add the packages to a knowledgebase (deploy the knowledge packages).<br>
final KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();<br> kbase.addKnowledgePackages(pkgs);<br><br> final StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();<br> ksession.setGlobal("list", new ArrayList<Object>());<br>
<br> ksession.addEventListener(new DebugAgendaEventListener());<br> ksession.addEventListener(new DebugWorkingMemoryEventListener());<br><br> // Setup the audit logging<br> KnowledgeRuntimeLogger logger = KnowledgeRuntimeLoggerFactory.newFileLogger(ksession, "log/helloworld");<br>
<br> final Message message = new Message();<br> message.setMessage("Hello World");<br> message.setStatus(Message.HELLO);<br> ksession.insert(message);<br><br> ksession.fireAllRules();<br>
logger.close();<br> ksession.dispose();<br> }<br><br>...<br><br>Here I don't think Ant is relevant because I have fork set to true:<br><br> <target name="test" depends="compile"><br>
<java classname="org.berlin.rpg.rules.Rules" fork="true"><br> <classpath refid="classpath.rt" /><br> <classpath><br> <pathelement location="${basedir}" /><br>
<pathelement location="${build.classes.dir}" /><br> </classpath><br> </java><br> </target><br><br><br><br>The error is thrown at line 1.<br><br>Basically, I haven't done anything except call<br>
<br>final KnowledgeBuilder kbuilder =
KnowledgeBuilderFactory.newKnowledgeBuilder();<br><br>I am running with Windows XP, Java6, and within Ant.1.7.<br><br><br><br><br><br>-- <br>Berlin Brown (berlin dot brown at <a rel="nofollow" target="_blank" href="http://gmail.com">gmail.com</a>)<br>
<a rel="nofollow" target="_blank" href="http://botnode.com">http://botnode.com</a><br><a rel="nofollow" target="_blank" href="http://berlinbrowndev.blogspot.com/">http://berlinbrowndev.blogspot.com/</a><br>
</div><br></div></div>-----Inline Attachment Follows-----<div class="im"><br><br><div>_______________________________________________<br>rules-users mailing list<br><a rel="nofollow" target="_blank" href="http://mc/compose?to=rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br>
<a rel="nofollow" target="_blank" href="https://lists.jboss.org/mailman/listinfo/rules-users">https://lists.jboss.org/mailman/listinfo/rules-users</a><br></div></div></blockquote></td></tr></tbody></table><br>
<br>_______________________________________________<br>
rules-users mailing list<br>
<a rel="nofollow" ymailto="mailto:rules-users@lists.jboss.org" target="_blank" href="/mc/compose?to=rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br>
<a rel="nofollow" target="_blank" href="https://lists.jboss.org/mailman/listinfo/rules-users">https://lists.jboss.org/mailman/listinfo/rules-users</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br>Berlin Brown (berlin dot brown at <a rel="nofollow" target="_blank" href="http://gmail.com">gmail.com</a>)<br><a rel="nofollow" target="_blank" href="http://botnode.com">http://botnode.com</a><br><a rel="nofollow" target="_blank" href="http://berlinbrowndev.blogspot.com/">http://berlinbrowndev.blogspot.com/</a><br>
</div><br>-----Inline Attachment Follows-----<br><br><div class="plainMail">_______________________________________________<br>rules-users mailing list<br><a ymailto="mailto:rules-users@lists.jboss.org" href="/mc/compose?to=rules-users@lists.jboss.org">rules-users@lists.jboss.org</a><br><a href="https://lists.jboss.org/mailman/listinfo/rules-users" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-users</a><br></div></blockquote></td></tr></table><br>