Author: hkesler
Date: Thu May 16 01:51:52 2013
New Revision: 1483149
URL: http://svn.apache.org/r1483149
Log:
KARAF-1799: added in a reg query that will look up the JAVA_HOME in the registry
Modified:
karaf/trunk/assemblies/features/framework/src/main/filtered-resources/resources/bin/karaf.bat
Modified:
karaf/trunk/assemblies/features/framework/src/main/filtered-resources/resources/bin/karaf.bat
URL:
http://svn.apache.org/viewvc/karaf/trunk/assemblies/features/framework/src/main/filtered-resources/resources/bin/karaf.bat?rev=1483149&r1=1483148&r2=1483149&view=diff
==============================================================================
---
karaf/trunk/assemblies/features/framework/src/main/filtered-resources/resources/bin/karaf.bat
(original)
+++
karaf/trunk/assemblies/features/framework/src/main/filtered-resources/resources/bin/karaf.bat
Thu May 16 01:51:52 2013
@@ -153,18 +153,15 @@ if not "%JAVA%" == "" goto :Check_JAVA_E
:TryJDK
start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java
Development Kit"
if not exist __reg1.txt (
- call :warn Unable to retrieve JAVA_HOME
- goto END
+ goto TryRegJRE
)
type __reg1.txt | find "CurrentVersion" > __reg2.txt
if errorlevel 1 (
- call :warn Unable to retrieve JAVA_HOME
- goto END
+ goto TryRegJRE
)
for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JavaTemp=%%~x
if errorlevel 1 (
- call :warn Unable to retrieve JAVA_HOME
- goto END
+ goto TryRegJRE
)
set JavaTemp=%JavaTemp%##
set JavaTemp=%JavaTemp: ##=##%
@@ -177,21 +174,42 @@ if not "%JAVA%" == "" goto :Check_JAVA_E
del __reg2.txt
start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java
Development Kit\%JavaTemp%"
if not exist __reg1.txt (
- call :warn Unable to retrieve JAVA_HOME from JDK
- goto END
+ goto TryRegJRE
)
type __reg1.txt | find "JavaHome" > __reg2.txt
if errorlevel 1 (
- call :warn Unable to retrieve JAVA_HOME
- goto END
+ goto TryRegJRE
)
for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JAVA_HOME=%%~x
if errorlevel 1 (
- call :warn Unable to retrieve JAVA_HOME
- goto END
+ goto TryRegJRE
)
del __reg1.txt
del __reg2.txt
+:TryRegJRE
+ rem try getting the JAVA_HOME from registry
+ FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY
"HKLM\Software\JavaSoft\Java Runtime Environment" /v CurrentVersion`) DO (
+ set JAVA_VERSION=%%A
+ )
+ FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY
"HKLM\Software\JavaSoft\Java Runtime Environment\%JAVA_VERSION%" /v JavaHome`)
DO (
+ set JAVA_HOME=%%A %%B
+ )
+ if not exist "%JAVA_HOME%" (
+ goto TryRegJDK
+ )
+ goto TryJDKEnd
+:TryRegJDK
+ rem try getting the JAVA_HOME from registry
+ FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY
"HKLM\Software\JavaSoft\Java Development Kit" /v CurrentVersion`) DO (
+ set JAVA_VERSION=%%A
+ )
+ FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY
"HKLM\Software\JavaSoft\Java Development Kit\%JAVA_VERSION%" /v JavaHome`) DO (
+ set JAVA_HOME=%%A %%B
+ )
+ if not exist "%JAVA_HOME%" (
+ call :warn Unable to retrieve JAVA_HOME from Registry
+ )
+ goto TryJDKEnd
:TryJDKEnd
if not exist "%JAVA_HOME%" (
call :warn JAVA_HOME is not valid: "%JAVA_HOME%"