Janino enables your application to compile Java code at runtime. It's useful where parts of code change often (i.e. business logic) or as a scripting engine that integrates seamlessly with your (Java) application. These and other use cases are discussed at http://janino.net/use.html . You may want to examine some examples, installed to /usr/share/doc/janino/samples/ . Janino can also act as a drop-in for javac, although this is mainly useful if you want to test if Janino compiles your code without any problems instead of using it as a replacement for a "real" Java compiler. For more information on janinoc, the command line interface, type "man janinoc" or run "janinoc -help".