Excelsior JET

Traditionally, Tomcat is compiled into Java bytecode, and then the bytecode is run on a JDK that first interprets the bytecode, and then natively compiles the bytecode into platform-specific native code during runtime. This works well, after years of effort to make it work efficiently. But it is not the only way Java software can be compiled and run. It is also possible to compile Tomcat's source into bytecode, then natively compile (ahead of runtime) the bytecode into platform-specific native code.

The Excelsior JET native Java compiler (http://www.excelsior-usa.com/jet.html) is able to compile Tomcat into native binaries that can be run as an optimized native executable. The executable can be packaged to deploy on other machines where no JDK is present, and only the code necessary to run the Java program comes with the JET-built package. Also, the resulting native binaries are far more difficult to reverse engineer than regular Java bytecode is, which may be valuable to any company developing and distributing a Tomcat web application to customers. JET is a 100 percent complete and compatible Java native compiler and runtime, so your webapp should build and run on it without any modifications. JET is commercial software that is not free to use (as of this writing). You may request and download an evaluation copy, and use it to build your Java program into native binaries.

We were able to build Tomcat 6.0 into a native executable with JET on the first try and run a complex ...

Get Tomcat: The Definitive Guide, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.