IBM Rational Rhapsody shows a JVM error on every time opening a Rhapsody instance. This could potentially hamper features like XMI Import Export if not fixed.
Error pop up on opening an IBM Rational Rhapsody instance:
Cannot Find Java Virtual Machine file (JVM.dll).
Please update the JavaLocation entry under the [JVM] section in your rhapsody.ini file.
One of the following could cause the JVM error:
- No Java instance installed
- Incompatible version of Java installed
- More than one version of Java installed
- Java bin path conflict
Resolving the problem
To resolve this issue, follow the instructions in the items noted below based on the diagnosis noted:
- No java installed :
- Install Java and take the following actions as mentioned in Option 4
- Incompatible version of Java installed :
- Open command prompt and type java –version to get the version of Java
- Install compatible version with that particular Rhapsody version
- More than one version of Java installed :
- If it’s a lower version already present then install the necessary higher version
- If there is a higher version than required remove the java version
- In either case follow the next steps mentioned in Java bin path conflict below
- Java bin path conflict
Check in the environment variable PATH if it has the path to the java bin directory, if not add the path to bin directory.
There could be a chance that there are more then one .ini files, check in the installation directory and also in C:\windows (Ideal one is the one present in that Rhapsody installation directory)
Run jdkrun.bat and jdkmake.bat in your rhapsody/share/etc directory
The ini file should look like the few lines below:
Also the path should not point to JDK but to JRE, for example: inside Java folder.
Disconnect "C:\WINDOWS\rhapsody.ini", as requested in the pop-up dialog.
(If at all there is a pop up that appears, else continue further)
Instead of setting "JavaLocation" to the full path of the folder containing "jvm.dll", omit the subfolders "\bin\client" from the end of that path.
The associated example is below:
The file "jvm.dll" is in the folder "C:\Program Files\Java\jre1.5.0_06\bin\client".
Recheck if jvm.dll is present in this folder.
Using "JavaLocation=C:\Program Files\Java\jre1.5.0_09\bin\client" in the INI file still causes the error.
Using "JavaLocation=C:\Program Files\Java\jre1.5.0_09" in the INI file removes the error.
Note: C:\Program Files\Java or C:\Program Files\Telelogic\Rhapsody7.2\ is used for example; this should be specific to your actual installation directory.