
 Jamocha - one engine for all your rules

 Jamocha is an open source rule engine. The objective of Jamocha is to provide
 a high quality rule engine and expert system shell environment. 
 
 Jamocha is written in Java (TM) and is open source. The source code is provided
 under the Apache Public License 2.0.


 

1. GETTING JAMOCHA

Download our latest source code from our Sourceforge page
	http://sourceforge.net/projects/jamocha/
and unzip it. There are the bin-releases with the compiled and
ready-to-use program and the src-releases with the sourcecode
(in general you are advised to use the src one)



2. COMPILING JAMOCHA

You can simply compile jamocha with the provided Ant-script. You
only need a version of Ant installed on your machine and to run
	ant jars
in the root Jamocha directory, which will generate the jarfile
"jamocha.jar" for you in "dist/".



3. STARTING JAMOCHA

To start Jamocha, you can one of this ways:

	a. run "ant run-gui" in the root Jamocha directory (will start
	   jamocha in the GUI mode)
	b. ensure all jars in our lib-dir and the jamocha.jar itself
	   are in the classpath and run org.jamocha.application.Jamocha
	   with the parameter "-gui" or "-shell". Furthermore, you can
	   optionally add the "-batch [FILE]" parameter in order to
	   instruct Jamocha to batch the given CLIPS-file at the beginning. 



4. ADVANCED STUFF

More informations and instructions can be found in our documentation
on our website http://www.jamocha.org and the documentation files inside
the doc/ subtree.



5. INTERNALS

This section maybe is not that interesting for end users. Nevertheless,
for people hacking on and with Jamocha, those informations can be useful:

- Internally, CLIPS-code is parsed by a JJTree-generated parser. All stuff
  for that is in the package "org.jamocha.language.clips.parser". You don't
  need to have a copy of JJTree for compiling Jamocha, because the parser
  is already attached in the generated form. For rebuilding the parser
  (which is required after changes in the SFP.jjt parser descriptor file),
  you need to have a working JJTree 3 (or maybe higher - but untested) copy
  and have to invoke the "parser" target in our Ant-script. Therefore, the
  JAVACC environmental variable has to be set to the location of your
  JavaCC installation. This will only generate new class files, if the old
  ones are removed before.
  
- For running the JUnit4 unit-tests, you have to invoke the "tests" target
  in our Ant-script
  
- The content in our doc/ subtree is partially auto-generated. To run the
  generation-process, you have to invoke the "generate-doc" target in our
  Ant-script. This requires a working Latex installation, which the "exec"
  task is able to find by calling with 'executable="latex"'. This seems
  not to work on MacOS, is untested on Windows and works on (at least all
  of mine) Linux installations.

	
	



 
 Enjoy your rules - the Jamocha Developer Team.
  http://www.jamocha.org