This is purely personal opinion, but I prefer JDT for stand alone deployments and JANINO for embedded deployments.
JDT is more complete in terms of features and syntax, but sometimes you will get classpath clashes in some production environments, like when running inside Tomcat.
JANINO is an excellent compiler for embedded applications, and does not has as many classpath clash problems, but is not as complete as JDT (last time I looked, there was no support for Generics, just to mention one example).
[]s
Edson
--
Edson Tirelli
JBoss Drools Core Development
JBoss, a division of Red Hat @ www.jboss.com