InstantJ
InstantJ is a library you can use to compile and execute Java code or evaluate expressions written in Java. This is done on the fly – there is no pre-compiling step necessary. This is ideal in cases where expressions are either assembled programmatically at runtime, are read from descriptors or received from user-input.