<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.&nbsp; 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>&lt;berlin.brown@gmail.com&gt;</i></b> wrote:<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"><br>From: Berlin Brown &lt;berlin.brown@gmail.com&gt;<br>Subject: Re: [rules-users] Very basic running of drools 5, basic setup and  quickstart<br>To: "Rules Users List" &lt;rules-users@lists.jboss.org&gt;<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.&nbsp;
 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">&lt;<a rel="nofollow" ymailto="mailto:greg_barton@yahoo.com" target="_blank" href="/mc/compose?to=greg_barton@yahoo.com">greg_barton@yahoo.com</a>&gt;</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?&nbsp; Your problem is no doubt with including the transitive dependencies of the drools libraries, which maven would do for you automatically.&nbsp; 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>&lt;dependencies&gt; <br>&nbsp;&nbsp;&nbsp; &lt;dependency&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;groupId&gt;org.drools&lt;/groupId&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
 &lt;artifactId&gt;drools-core&lt;/artifactId&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;version&gt;5.0.1&lt;/version&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/dependency&gt;<br>&nbsp;&nbsp;&nbsp; &lt;dependency&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;groupId&gt;org.drools&lt;/groupId&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;artifactId&gt;drools-compiler&lt;/artifactId&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;version&gt;5.0.1&lt;/version&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/dependency&gt;<br>&nbsp;&nbsp;&nbsp; &lt;dependency&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;groupId&gt;org.drools&lt;/groupId&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;artifactId&gt;drools-api&lt;/artifactId&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;version&gt;5.0.1&lt;/version&gt;<br>
&nbsp;&nbsp;&nbsp; &lt;/dependency&gt;<br>&lt;/dependencies&gt; <br><br>So I suggest you give maven a try.&nbsp; It makes this easy. :)<br><br>--- On <b>Wed, 4/21/10,
 Berlin Brown <i>&lt;<a rel="nofollow" ymailto="mailto:berlin.brown@gmail.com" target="_blank" href="/mc/compose?to=berlin.brown@gmail.com">berlin.brown@gmail.com</a>&gt;</i></b> wrote:<br><blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;">
<br>From: Berlin Brown &lt;<a rel="nofollow" ymailto="mailto:berlin.brown@gmail.com" target="_blank" href="/mc/compose?to=berlin.brown@gmail.com">berlin.brown@gmail.com</a>&gt;<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.&nbsp; 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:&nbsp; Note: I don't am running completely without Eclipse or any other IDE:&nbsp; <br>
<br>test:<br>&nbsp;&nbsp;&nbsp;&nbsp; [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>

&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.compiler.PackageBuilderConfiguration.addDialect(PackageBuild<br>erConfiguration.java:274)<br>&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.compiler.PackageBuilderConfiguration.buildDialectConfigurati<br>onMap(PackageBuilderConfiguration.java:259)<br>

&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.compiler.PackageBuilderConfiguration.init(PackageBuilderConf<br>iguration.java:176)<br>&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.compiler.PackageBuilderConfiguration.&lt;init&gt;(PackageBuilderCo<br>nfiguration.java:153)<br>

&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.compiler.PackageBuilder.&lt;init&gt;(PackageBuilder.java:242)<br>&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.compiler.PackageBuilder.&lt;init&gt;(PackageBuilder.java:142)<br>&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.builder.impl.KnowledgeBuilderProviderImpl.newKnowledgeBuilde<br>

r(KnowledgeBuilderProviderImpl.java:29)<br>&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.builder.KnowledgeBuilderFactory.newKnowledgeBuilder(Knowledg<br>eBuilderFactory.java:29)<br>&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; at org.berlin.rpg.rules.Rules.rules(Rules.java:33)<br>

&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; at org.berlin.rpg.rules.Rules.main(Rules.java:73)<br>&nbsp;&nbsp;&nbsp;&nbsp; [java] Caused by: java.lang.RuntimeException: The Eclipse JDT Core jar is not in the<br>classpath<br>&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.rule.builder.dialect.java.JavaDialectConfiguration.setCompil<br>

er(JavaDialectConfiguration.java:94)<br>&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.rule.builder.dialect.java.JavaDialectConfiguration.init(Java<br>DialectConfiguration.java:55)<br>&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; at org.drools.compiler.PackageBuilderConfiguration.addDialect(PackageBuild<br>

erConfiguration.java:270)<br>&nbsp;&nbsp;&nbsp;&nbsp; [java]&nbsp;&nbsp;&nbsp;&nbsp; ... 9 more<br>&nbsp;&nbsp;&nbsp;&nbsp; [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>&nbsp;&lt;path id="classpath"&gt;<br>

&nbsp;&nbsp;&nbsp;&nbsp; &lt;pathelement location="${lib.dir}" /&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp; &lt;pathelement location="${lib.dir}/drools-api-5.0.1.jar" /&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp; &lt;pathelement location="${lib.dir}/drools-compiler-5.0.1.jar" /&gt;<br>

&nbsp;&nbsp;&nbsp;&nbsp; &lt;pathelement location="${lib.dir}/drools-core-5.0.1.jar" /&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp; &lt;pathelement location="${lib.dir}/janino-2.5.15.jar" /&gt;<br>&nbsp;&lt;/path&gt;<br><br>Here is the Java code that is throwing the error.&nbsp; I commented out the java.compiler code, that didn't work either.<br>

<br>&nbsp;&nbsp;&nbsp; public void rules() {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /*<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final Properties properties = new Properties();&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; properties.setProperty( "drools.dialect.java.compiler", "JANINO" );&nbsp; <br>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PackageBuilderConfiguration cfg = new PackageBuilderConfiguration( properties );&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; JavaDialectConfiguration javaConf = (JavaDialectConfiguration)&nbsp; <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cfg.getDialectConfiguration( "java" );&nbsp; <br>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; */<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // this will parse and compile in one step<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; kbuilder.add(ResourceFactory.newClassPathResource("HelloWorld.drl", Rules.class), ResourceType.DRL);<br>

<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Check the builder for errors<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (kbuilder.hasErrors()) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(kbuilder.getErrors().toString());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; throw new RuntimeException("Unable to compile \"HelloWorld.drl\".");<br>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Get the compiled packages (which are serializable)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final Collection&lt;KnowledgePackage&gt; pkgs = kbuilder.getKnowledgePackages();<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Add the packages to a knowledgebase (deploy the knowledge packages).<br>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final KnowledgeBase kbase = KnowledgeBaseFactory.newKnowledgeBase();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; kbase.addKnowledgePackages(pkgs);<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ksession.setGlobal("list", new ArrayList&lt;Object&gt;());<br>

<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ksession.addEventListener(new DebugAgendaEventListener());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ksession.addEventListener(new DebugWorkingMemoryEventListener());<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Setup the audit logging<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; KnowledgeRuntimeLogger logger = KnowledgeRuntimeLoggerFactory.newFileLogger(ksession, "log/helloworld");<br>

<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; final Message message = new Message();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; message.setMessage("Hello World");<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; message.setStatus(Message.HELLO);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ksession.insert(message);<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ksession.fireAllRules();<br>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; logger.close();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ksession.dispose();<br>&nbsp;&nbsp;&nbsp; }<br><br>...<br><br>Here I don't think Ant is relevant because I have fork set to true:<br><br>&nbsp;&lt;target name="test" depends="compile"&gt;<br>

&nbsp;&nbsp;&nbsp;&nbsp; &lt;java classname="org.berlin.rpg.rules.Rules" fork="true"&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;classpath refid="classpath.rt" /&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;classpath&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;pathelement location="${basedir}" /&gt;<br>

&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;pathelement location="${build.classes.dir}" /&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/classpath&gt;<br>&nbsp;&nbsp;&nbsp;&nbsp; &lt;/java&gt;<br>&nbsp;&lt;/target&gt;<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>