Name: rl43681 Date: 11/15/2001
C:\apps>jdk118\bin\java -version
java version "1.1.8"
C:\apps>jdk1.3.1\bin\java -version
java version "1.3.1_01"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1_01)
Java HotSpot(TM) Client VM (build 1.3.1_01, mixed mode)
C:\apps>jdk122_009\bin\java -version
java version "1.2.2"
Classic VM (build JDK-1.2.2_009, native threads, symcjit)
C:\apps>jdk130_03\bin\java -version
java version "1.3.0_03"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0_03)
Java HotSpot(TM) Client VM (build 1.3.0_03, mixed mode)
C:\apps>jdk14b2\bin\java -version
java version "1.4.0-beta2"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-beta2-b77)
Java HotSpot(TM) Client VM (build 1.4.0-beta2-b77, mixed mode)
The java executable appears not to be the determinant of the VM dll's used, and
it is not clear how to set up the registry for correct behavior.
To see the problem:
- I had J2SE 1.3.1 installed.
- To regress a bug, I installed J2SE 1.3.0. This updated registry keys under
HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft such that the "current version" was
reported as 1.3.0.
- Since I would like the default version (e.g., when launching jars) to be
1.3.1, I tried to set the current version to 1.3.1. That caused the VM to
report that "1.3 is required" when I pointed at the 1.2.2 java.exe.
So what I'd like: mainly to be absolutely sure which version is running on a
machine which has multiple versions, including multiple micro and update
versions.
Perhaps that means documenting the registry setting and the dll algorithm. It
appears that the "current version" is a major version (1.3), and that in the
major version key a micro version and update version specify that actual VM
invoked. However, when I set this up for both the JRE and the JDK, I got the
error mentioned above, suggesting there is another registry key somewhere which
is set by the install program.
- Alternatively, I'd like to be able to remove all registry keys and have
the .exe determine the .dll's by locality
Thanks -
Wes
P.S. - in case it helps, following are the registry settings
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft]
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit]
"CurrentVersion"="1.3"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.1]
"JavaHome"="C:\\apps\\jdk118"
"MicroVersion"="8"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.2]
"JavaHome"="c:\\apps\\jdk122_009"
"MicroVersion"="2"
"UpdateVersion"="009"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.3]
"JavaHome"="c:\\apps\\jdk13"
"MicroVersion"="1"
"CurrentVersion"="1.3"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.3.0_03]
"JavaHome"="c:\\apps\\jdk130_03"
"MicroVersion"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.3.1]
"JavaHome"="C:\\apps\\jdk1.3.1"
"MicroVersion"="1"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.3.1_01]
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.4]
"JavaHome"="C:\\apps\\jdk14b2"
"MicroVersion"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\1.4.0]
"JavaHome"="C:\\apps\\jdk14b2"
"MicroVersion"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Plug-in]
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Plug-in\1.2]
"JavaHome"="C:\\apps\\jre122_009"
"RuntimeLib"="C:\\apps\\jre122_009\\bin\\classic\\jvm.dll"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Plug-in\1.3]
"JavaHome"="C:\\apps\\jbuilder4\\jdk1.3\\jre"
"RuntimeLib"="C:\\apps\\jbuilder4\\jdk1.3\\jre\\bin\\classic\\jvm.dll"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Plug-in\1.3.0_03]
"JavaHome"="C:\\Program Files\\JavaSoft\\JRE\\1.3.0_03"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Plug-in\1.3.1_01]
"JavaHome"="C:\\Program Files\\JavaSoft\\JRE\\1.3.1"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment]
"CurrentVersion"="1.3"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.2]
"JavaHome"="C:\\apps\\jre122_009"
"MicroVersion"="2"
"UpdateVersion"="009"
"RuntimeLib"="C:\\apps\\jre122_009\\bin\\classic\\jvm.dll"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.3]
"JavaHome"="C:\\Program Files\\JavaSoft\\JRE\\1.3.0_03"
"MicroVersion"="0"
"RuntimeLib"="C:\\Program Files\\JavaSoft\\JRE\\1.3.0_03\\bin\\hotspot\\jvm.dll"
"UpdateVersion"="000"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.3.0_03]
"JavaHome"="C:\\Program Files\\JavaSoft\\JRE\\1.3.0_03"
"MicroVersion"="0"
"RuntimeLib"="C:\\Program Files\\JavaSoft\\JRE\\1.3.0_03\\bin\\hotspot\\jvm.dll"
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.3.1]
"JavaHome"="C:\\Program Files\\JavaSoft\\JRE\\1.3.1"
"MicroVersion"="1"
"RuntimeLib"="C:\\Program Files\\JavaSoft\\JRE\\1.3.1\\bin\\hotspot\\jvm.dll"
(Review ID: 135566)
======================================================================