PRB: Compiled application does not work on other computers due to missing DLLs
Notice Information in this article applies to Excelsior JET versions 2.5 through 3.7.
An executable (EXE or DLL) created by Excelsior JET works properly on the system where it was built, but fails to start on systems where JET is not installed with the following message:
Unable to find/load XKRNxxxyy
.DLL (referenced from executable name
The JET Setup utility precompiles Java 2 platform classes (
java.awt.*, etc.) into a set of runtime DLLs named
.DLL, etc. and places them in the
BIN subdirectory of your JET installation. The JET runtime is placed in
.DLL along with the core Java 2 classes that are required by any application, such as
An application executable built by Excelsior JET in the default mode does not contain Java 2 platform classes, and therefore requires one or more of the JET runtime DLLs with precompiled platform classes.
- Standard Edition users:
- Use the JetPackII utility to create an installation package including your application’s executable, the required JET run-time DLLs, the JRE (optional), and any files that may be required by your application. See the Chapter "Deployment Automation" in Excelsior JET User’s Guide (accessible by selecting the Help button in the JET Control Panel). Professional Edition users:
- Use JetPackII as decribed in the above paragraph or compile your application into a single EXE not requiring JET runtime DLLs with the help of JetPerfect Global Optimizer. See the Chapter "JetPerfect Global Optimizer" in Excelsior JET User’s Guide for details. Personal Edition users:
- The license of the Personal Edition prohibits deployment, so you may not copy the compiled applications to other systems. Consequently, JetPackII is not included in the Personal Edition.
- Excelsior JET User’s Guide: https://www.excelsior-usa.com/doc/jet/jetw.html
Article ID: 12
Last Revised On: 26-Sep-2005