cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
ITGUYNP
Level 2

JRE libraries are missing or are not compatible

Jump to solution

Our installer uses InstallAnywhere 2021 and is failing w/ this error in the install log
========= Forking JAVA =============================================
JRE libraries are missing or not compatible....
Exiting....
========= JAVA Finished =============================================

We tried setting IATEMPDIR per this technote - https://community.flexera.com/t5/Code-Insight-Knowledge-Base/JRE-libraries-are-missing-or-not-compatible-error-during-FlexNet/ta-p/107568 - but the issue remains unresolved. 

I am not sure if IA 2021 uses this IATEMPDIR environment variable.

The default TEMP directory has lot of space and is writeable by the installing user - so we actually don't need to specify an alternate TEMP directory.

I also found that java.exe cannot be launched by the userID that runs the installer - So could this error occur if the java.exe used by the installer is not executable by the userID launching the installer? 

I tried specifying 

lax.nl.java.option.verbose=all
lax.nl.java.option.debugging=on

in the LAX properties file, but there is no debug data being written that can explain why 'forking Java' operation failed.

The failure occurs, even when LAX_VM command line parameter is used to specify an alternate JVM.

 

0 Kudos
(1) Solution
ITGUYNP
Level 2

I resolved the issue. The root cause was that the /tmp folder to where the installer was extracting the package, had noexec attribute on it. this means that the executable binary files in the /tmp folder are not executable, even if the user has execute permission on them.

When the /tmp folder was re-mounted with exec attribute, the java in /tmp extrated folders could be run and the install completed.

View solution in original post

(1) Reply
ITGUYNP
Level 2

I resolved the issue. The root cause was that the /tmp folder to where the installer was extracting the package, had noexec attribute on it. this means that the executable binary files in the /tmp folder are not executable, even if the user has execute permission on them.

When the /tmp folder was re-mounted with exec attribute, the java in /tmp extrated folders could be run and the install completed.