As asked and answered here, python has a useful way of deployment without installers. Can Java do the same thing?
You might be able to get some luck with GCJ - haven't tried it myself.
For creating native executables, you can use Excelsion Jet, which compiles Java to native code. We used it for a project at work, and we had to perform zero modification to the original source code (which targetted Sun's JDK).