The problems faced by teams that are attempting Agile in non-traditional settings aren't that Agile principles are inapplicable, nor that the feedback cycle is doomed to failure; but rather, outside of a certain Agile sweet-spot there are additional barriers and costs to applying Agile techniques. None of these obstacles prevents Agile in itself but each increases the cost of getting to Agile.
The ability to dynamically generate code can greatly increase the expressiveness of developers. Repetitive code can be eliminated and complex decisions be pushed back to configuration files that can be changed by business analysts. In the past .NET developers built dynamic code using Reflection.Emit or CodeDom, but with LINQ Expressions a lightweight alternative has become available.
One of the most exciting things in Java right now is the work being done to get other programming languages onto the JVM. If you want to try something very different from Java, Lisp is a great option. 12
This article explains how to deploy a JRuby application with Java Web Start. From creating the code, signing the JARs, and setting up JRuby properties. As bonus: a look at JRuby 1.1's AOT feature. 3