autoj is an automated build system for Java based on autoconf, make, bash and some other GNU tools. It evolved, and is still evolving, during the daily work at Puzzle ITC GmbH.
The current version automatically performs the following tasks:- Adapts the package to the current system configuration (e.g. selects a Java compiler)
- Sets the CLASSPATH
- Compiles all Java classes
- Compiles all JFlex scanners
- Compiles all CUP parsers
- clean: Removes all intermediate and binary files
- lib: Downloads all dependencies (.jar files)
- javadoc: Creates the JavaDoc Documentation
- cvscheck: Checks if the current cvs version can be compiled
- jar: Creates a jar file of the project
- dist: Creates a distribution tarball including all dependencies
autoj also contains a bash script that sets the correct CLASSPATH
and allows to start a project by specifying an unqualified or partially qualified
class name. In order for all this to work autoj requires a project to follow
certain guidelines. All jar files must be in one directory for example. The
name of this directory can be specified, though.
autoj is useful for compiling on the console or for integration into
editors like jEdit and runs on all Unix
like system including Win32 with Cygwin.