Note: This is a Maven fork of JSoar
JSoar is a pure Java implementation of the Soar kernel. See https://github.com/soartech/jsoar/ for more information.
jsoar-build/readme.txt for build instructions
The coding conventions for the JSoar codebase are stored as Eclipse formatter rules in
eclipse-formatter.xml. To import:
Window -> Preferences -> Java -> Code Style -> Formatter -> Import ...
The basic rules are:
- NO TABS
- 4 spaces of indentation
- Opening braces on their own line
TODO: Consolidate build instructions.
To create a release using the Maven Release plugin:
- Make sure
gitcan authenticate to the SoarTech server without interaction
git pullprompt you for a username or password? If so, you need to change that.
- This is not technically required but if you type your password wrong, below, it will cancel the entire process.
- Make sure everything is fully merged and all commits are pushed.
- Check out
smem-mavenmay go away some day)
- Run the release plugin:
mvn clean release:clean release:prepare release:perform deploy
- The first
cleanis probably unnecessary
- Same with
release:clean, but they don't hurt.
- Same with
release:preparepauses to interactively ask some questions. If you don't know what you're doing, the default behavior (hitting enter in response to all prompts) does the following:
-SNAPSHOTfrom all of the JSoar components, and updates all component dependencies (scoped to JSoar components only)
- Commits the changed poms, tags this with
jsoar-VERSIONwhich is whatever the version was minus
-SNAPSHOT, pushes this to the repository
- Increments the micro and adds
-SNAPSHOTback to everything it just removed it from, changing the poms again, committing them, and pushing the change to the repository
release:performcreates and deploys the artifacts
deploydeploys the new snapshot, which is pretty much identical to the artifact just built
Acknowledgements / History
JSoar was originally envisioned and implemented by Dave Ray (and indeed, the vast majority of the code is still Dave's). JSoar started out on Google Code in SVN, was converted to Mercurial and then Git, and then moved to Dave's github site. Today JSoar is primarily maintained by Soar Technology, Inc.