Personally I have always wanted to make a native code single executable which didn't require an installer.
I have researched pretty thoroughly on this topic and these are my results:
1.Native code compilation is pretty much counter-productive to the main purpose of Java(platform independent language).
2.Because of this there are not many ways to do it.
3. The best surviving two are Excelsior Jet
and the GCC
4. I have as of yet been unable to get the latter to work and the former seems to only allow one to make an exe which requires their custom jre (one or two files).
5. No solution I have found yet(excluding the gcc about which I don't know) makes true native code independent of an rte. The best you can seem to do is make an installer for the program and the rte.
6.At long last I found what seems to be the closest thing to what I want
Basically you use Excelsior Jet to compile the code with their custom rte and then use 7-zip to package the exe and the rte into a new exe.
It won't be lightning
fast, but it will do what you want.