Java2exe (JexePack)
(JexePack) allows you to package a Java application, along with its resources (like GIF, JPG, JNI DLLs, etc), into a single compressed 32-bit Windows EXE that targets multiple Java runtime environments.
I could suggest JCGO, a Java to C translator. The produced C code is quite portable and could be compiled to an optimized Windows or Linux (or SunOS Solaris) executable (either 32-bit or 64-bit) file. Embedded platforms are also supported. The produced executable does not require (nor contain) a Java VM.