--- a/JavaRelease.st Fri Mar 13 13:33:16 2015 +0000
+++ b/JavaRelease.st Fri Mar 13 16:09:02 2015 +0000
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
"
COPYRIGHT (c) 1996-2015 by Claus Gittinger
@@ -773,29 +775,39 @@
javaHomeOnWindowsFromRegistryForRelease: vsn
"Return path to java home (either JDK or JRE) based on values in registry.
- If not on windows or registry key not found, return nil"
+ If not on windows or registry key not found, return nil.
+
+ CAVEAT: This method only finds Oracle JDKs"
|entry home |
OperatingSystem isMSWINDOWSlike ifFalse:[ ^ nil ].
- "Search for JDK first..."
- entry := (OperatingSystem registryEntry key:'HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\', vsn).
+ "Search for JDK first, prefer 46 bit over 32 bit (even though it does not matter for STX:LIBJAVA)"
+ entry := OperatingSystem registryEntry key:'HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\', vsn flags: #KEY_WOW64_64KEY.
+ entry isNil ifTrue:[
+ entry := OperatingSystem registryEntry key:'HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\', vsn flags: #KEY_WOW64_32KEY.
+ ].
+ "Search for JRE...."
+ entry isNil ifTrue:[
+ entry := OperatingSystem registryEntry key:'HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\', vsn flags: #KEY_WOW64_64KEY.
+ ].
+ entry isNil ifTrue:[
+ entry := OperatingSystem registryEntry key:'HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\', vsn flags: #KEY_WOW64_32KEY.
+ ].
entry notNil ifTrue:[
home := entry valueNamed:'JavaHome'.
(home notNil and:[home asFilename exists]) ifTrue:[ ^ home ].
].
- "Search for JRE...."
- entry := (OperatingSystem registryEntry key:'HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\', vsn).
- entry notNil ifTrue:[
- home := entry valueNamed:'JavaHome'.
- (home notNil and:[home asFilename exists]) ifTrue:[ ^ home ].
- ].
-
- ^nil
+ ^ nil
+
+ "
+ JavaRelease::OracleJDK7 new searchForJavaHome
+ JavaRelease::OracleJDK8 new searchForJavaHome
+ "
"Created: / 16-02-2013 / 02:52:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 21-02-2013 / 03:51:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
- "Modified: / 20-02-2015 / 14:26:10 / jv"
+ "Modified (comment): / 13-03-2015 / 15:41:40 / jv"
!
javaHomeOrNil