There are a lot of ways. Usually you have to buy a third party packager. There are lots of options, limitations. I compiled this list years ago; some may not work, but it is a start.
.
Executables (standalone machine executable Windows exe files)
jexegen.exefrom Microsoft's SDK-Java.2.0.requires JRE
Visual Cafeprovides a compiler to create exerequires VisualCafe, JRE
j2Exe2.2http://www.bravozulu.comcompiles "java classfile" only,JRE
TowerJhttp://www.towerj.comnot client side, info
JHPCJava High Performance CompilerIBM AlphaWorks VAJ 4.0?
InstallAnywheresoftware by ZeroGinfo?
Jet1.01http://www.excelsior-usa.comcompiles heavy?
java2exehttp://www.duckware.com/java2exe.htmlhave to pay
http://java.sun.com/docs/books/tutorial/jar/basics/index.html
executable .jarfile instead of a .exe file
Java Webstart-
Excelsior JETnative compiler that compiles Java into native Intel x86 instructions. JET AWT/Swing apps still require a full JRE.
exeJcommand line tool that creates a "batch-like" executable (.exe file)
exe4jis a Java exe maker
JSmoothJava Executable Wrapper that makes an exe from a jar file.
JexePackpackages a Java app & resources into a single EXE.