Janino is not intended to be a development tool, but an embedded compiler for run-time compilation purposes, such as expression evaluators or "server pages" engines like JSP. The major design goal was to keep the compiler small and simple, while partially sacrificing completeness. Nobody likes the idea of carrying around huge libraries for simple applications. See Parser for the list of implemented and missing language features.
This software is a useful compiler which reads a Java expression, block, or source file, and generates Java byte code that is loaded and executed directly.