X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=karaf%2Fopendaylight-karaf-resources%2Fsrc%2Fmain%2Fresources%2Fbin%2Fkaraf.bat;h=6627eb4889e39c71be19cd8e0ecd286f44799668;hp=9c278c3b9ad366ecfe183d932ee153139b75c192;hb=4fa2ddeef202f1021dfb2e779d97c6982bb3257e;hpb=f3db96e1a7b1e416bcbd75c06cbca2fba8a152eb diff --git a/karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf.bat b/karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf.bat index 9c278c3b9a..6627eb4889 100644 --- a/karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf.bat +++ b/karaf/opendaylight-karaf-resources/src/main/resources/bin/karaf.bat @@ -1,340 +1,339 @@ -@echo off -rem -rem -rem Licensed to the Apache Software Foundation (ASF) under one or more -rem contributor license agreements. See the NOTICE file distributed with -rem this work for additional information regarding copyright ownership. -rem The ASF licenses this file to You under the Apache License, Version 2.0 -rem (the "License"); you may not use this file except in compliance with -rem the License. You may obtain a copy of the License at -rem -rem http://www.apache.org/licenses/LICENSE-2.0 -rem -rem Unless required by applicable law or agreed to in writing, software -rem distributed under the License is distributed on an "AS IS" BASIS, -rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -rem See the License for the specific language governing permissions and -rem limitations under the License. -rem - -if not "%ECHO%" == "" echo %ECHO% - -setlocal -set DIRNAME=%~dp0% -set PROGNAME=%~nx0% -set ARGS=%* - -rem Sourcing environment settings for karaf similar to tomcats setenv -SET KARAF_SCRIPT="karaf.bat" -if exist "%DIRNAME%setenv.bat" ( - call "%DIRNAME%setenv.bat" -) - -rem Check console window title. Set to Karaf by default -if not "%KARAF_TITLE%" == "" ( - title %KARAF_TITLE% -) else ( - title Karaf -) - -rem Check/Set up some easily accessible MIN/MAX params for JVM mem usage -if "%JAVA_MIN_MEM%" == "" ( - set JAVA_MIN_MEM=128M -) -if "%JAVA_MAX_MEM%" == "" ( - set JAVA_MAX_MEM=512M -) - -goto BEGIN - -:warn - echo %PROGNAME%: %* -goto :EOF - -:BEGIN - -rem # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # - -if not "%KARAF_HOME%" == "" ( - call :warn Ignoring predefined value for KARAF_HOME -) -set KARAF_HOME=%DIRNAME%.. -if not exist "%KARAF_HOME%" ( - call :warn KARAF_HOME is not valid: "%KARAF_HOME%" - goto END -) - -if not "%KARAF_BASE%" == "" ( - if not exist "%KARAF_BASE%" ( - call :warn KARAF_BASE is not valid: "%KARAF_BASE%" - goto END - ) -) -if "%KARAF_BASE%" == "" ( - set "KARAF_BASE=%KARAF_HOME%" -) - -if not "%KARAF_DATA%" == "" ( - if not exist "%KARAF_DATA%" ( - call :warn KARAF_DATA is not valid: "%KARAF_DATA%" - goto END - ) -) -if "%KARAF_DATA%" == "" ( - set "KARAF_DATA=%KARAF_BASE%\data" -) - -if not "%KARAF_ETC%" == "" ( - if not exist "%KARAF_ETC%" ( - call :warn KARAF_ETC is not valid: "%KARAF_ETC%" - goto END - ) -) -if "%KARAF_ETC%" == "" ( - set "KARAF_ETC=%KARAF_BASE%\etc" -) - -set LOCAL_CLASSPATH=%CLASSPATH% -set JAVA_MODE=-server - -set CLASSPATH=%LOCAL_CLASSPATH%;%KARAF_BASE%\conf -set DEFAULT_JAVA_DEBUG_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 - -if "%LOCAL_CLASSPATH%" == "" goto :KARAF_CLASSPATH_EMPTY - set CLASSPATH=%LOCAL_CLASSPATH%;%KARAF_BASE%\conf - goto :KARAF_CLASSPATH_END -:KARAF_CLASSPATH_EMPTY - set CLASSPATH=%KARAF_BASE%\conf -:KARAF_CLASSPATH_END - -rem Setup Karaf Home -if exist "%KARAF_HOME%\conf\karaf-rc.cmd" call %KARAF_HOME%\conf\karaf-rc.cmd -if exist "%HOME%\karaf-rc.cmd" call %HOME%\karaf-rc.cmd - -rem Support for loading native libraries -set PATH=%PATH%;%KARAF_BASE%\lib;%KARAF_HOME%\lib - -rem Setup the Java Virtual Machine -if not "%JAVA%" == "" goto :Check_JAVA_END - if not "%JAVA_HOME%" == "" goto :TryJDKEnd - call :warn JAVA_HOME not set; results may vary -:TryJRE - start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment" - if not exist __reg1.txt goto :TryJDK - type __reg1.txt | find "CurrentVersion" > __reg2.txt - if errorlevel 1 goto :TryJDK - for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JavaTemp=%%~x - if errorlevel 1 goto :TryJDK - set JavaTemp=%JavaTemp%## - set JavaTemp=%JavaTemp: ##=##% - set JavaTemp=%JavaTemp: ##=##% - set JavaTemp=%JavaTemp: ##=##% - set JavaTemp=%JavaTemp: ##=##% - set JavaTemp=%JavaTemp: ##=##% - set JavaTemp=%JavaTemp:##=% - del __reg1.txt - del __reg2.txt - start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\%JavaTemp%" - if not exist __reg1.txt goto :TryJDK - type __reg1.txt | find "JavaHome" > __reg2.txt - if errorlevel 1 goto :TryJDK - for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JAVA_HOME=%%~x - if errorlevel 1 goto :TryJDK - del __reg1.txt - del __reg2.txt - goto TryJDKEnd -:TryJDK - start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit" - if not exist __reg1.txt ( - goto TryRegJRE - ) - type __reg1.txt | find "CurrentVersion" > __reg2.txt - if errorlevel 1 ( - goto TryRegJRE - ) - for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JavaTemp=%%~x - if errorlevel 1 ( - goto TryRegJRE - ) - set JavaTemp=%JavaTemp%## - set JavaTemp=%JavaTemp: ##=##% - set JavaTemp=%JavaTemp: ##=##% - set JavaTemp=%JavaTemp: ##=##% - set JavaTemp=%JavaTemp: ##=##% - set JavaTemp=%JavaTemp: ##=##% - set JavaTemp=%JavaTemp:##=% - del __reg1.txt - del __reg2.txt - start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\%JavaTemp%" - if not exist __reg1.txt ( - goto TryRegJRE - ) - type __reg1.txt | find "JavaHome" > __reg2.txt - if errorlevel 1 ( - goto TryRegJRE - ) - for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JAVA_HOME=%%~x - if errorlevel 1 ( - 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%" - goto END - ) - set JAVA=%JAVA_HOME%\bin\java -:Check_JAVA_END - -if not exist "%JAVA_HOME%\bin\server\jvm.dll" ( - if not exist "%JAVA_HOME%\jre\bin\server\jvm.dll" ( - echo WARNING: Running Karaf on a Java HotSpot Client VM because server-mode is not available. - echo Install Java Developer Kit to fix this. - echo For more details see http://java.sun.com/products/hotspot/whitepaper.html#client - set JAVA_MODE=-client - ) -) -set DEFAULT_JAVA_OPTS=%JAVA_MODE% -Xms%JAVA_MIN_MEM% -Xmx%JAVA_MAX_MEM% -Dderby.system.home="%KARAF_DATA%\derby" -Dderby.storage.fileSyncTransactionLog=true -Dcom.sun.management.jmxremote -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass - -rem Check some easily accessible MIN/MAX params for JVM mem usage -if not "%JAVA_PERM_MEM%" == "" ( - set DEFAULT_JAVA_OPTS=%DEFAULT_JAVA_OPTS% -XX:PermSize=%JAVA_PERM_MEM% -) -if not "%JAVA_MAX_PERM_MEM%" == "" ( - set DEFAULT_JAVA_OPTS=%DEFAULT_JAVA_OPTS% -XX:MaxPermSize=%JAVA_MAX_PERM_MEM% -) - -if "%JAVA_OPTS%" == "" set JAVA_OPTS=%DEFAULT_JAVA_OPTS% - -if "%EXTRA_JAVA_OPTS%" == "" goto :KARAF_EXTRA_JAVA_OPTS_END - set JAVA_OPTS=%JAVA_OPTS% %EXTRA_JAVA_OPTS% -:KARAF_EXTRA_JAVA_OPTS_END - -if "%KARAF_DEBUG%" == "" goto :KARAF_DEBUG_END - if "%1" == "stop" goto :KARAF_DEBUG_END - if "%1" == "client" goto :KARAF_DEBUG_END - rem Use the defaults if JAVA_DEBUG_OPTS was not set - if "%JAVA_DEBUG_OPTS%" == "" set JAVA_DEBUG_OPTS=%DEFAULT_JAVA_DEBUG_OPTS% - - set JAVA_OPTS=%JAVA_DEBUG_OPTS% %JAVA_OPTS% - call :warn Enabling Java debug options: %JAVA_DEBUG_OPTS% -:KARAF_DEBUG_END - -if "%KARAF_PROFILER%" == "" goto :KARAF_PROFILER_END - set KARAF_PROFILER_SCRIPT=%KARAF_HOME%\conf\profiler\%KARAF_PROFILER%.cmd - - if exist "%KARAF_PROFILER_SCRIPT%" goto :KARAF_PROFILER_END - call :warn Missing configuration for profiler '%KARAF_PROFILER%': %KARAF_PROFILER_SCRIPT% - goto END -:KARAF_PROFILER_END - -rem Setup the classpath -pushd "%KARAF_HOME%\lib" -for %%G in (karaf*.jar) do call:APPEND_TO_CLASSPATH %%G -popd -goto CLASSPATH_END - -: APPEND_TO_CLASSPATH -set filename=%~1 -set suffix=%filename:~-4% -if %suffix% equ .jar set CLASSPATH=%CLASSPATH%;%KARAF_HOME%\lib\%filename% -goto :EOF - -:CLASSPATH_END - -rem Execute the JVM or the load the profiler -if "%KARAF_PROFILER%" == "" goto :RUN - rem Execute the profiler if it has been configured - call :warn Loading profiler script: %KARAF_PROFILER_SCRIPT% - call %KARAF_PROFILER_SCRIPT% - -:RUN - SET OPTS=-Dkaraf.startLocalConsole=true -Dkaraf.startRemoteShell=true - SET MAIN=org.apache.karaf.main.Main - SET SHIFT=false - -:RUN_LOOP - if "%1" == "stop" goto :EXECUTE_STOP - if "%1" == "status" goto :EXECUTE_STATUS - if "%1" == "console" goto :EXECUTE_CONSOLE - if "%1" == "server" goto :EXECUTE_SERVER - if "%1" == "client" goto :EXECUTE_CLIENT - if "%1" == "clean" goto :EXECUTE_CLEAN - if "%1" == "debug" goto :EXECUTE_DEBUG - goto :EXECUTE - -:EXECUTE_STOP - SET MAIN=org.apache.karaf.main.Stop - shift - goto :RUN_LOOP - -:EXECUTE_STATUS - SET MAIN=org.apache.karaf.main.Status - shift - goto :RUN_LOOP - -:EXECUTE_CONSOLE - shift - goto :RUN_LOOP - -:EXECUTE_SERVER - SET OPTS=-Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true - shift - goto :RUN_LOOP - -:EXECUTE_CLIENT - SET OPTS=-Dkaraf.startLocalConsole=true -Dkaraf.startRemoteShell=false - shift - goto :RUN_LOOP - -:EXECUTE_CLEAN - rmdir /S /Q "%KARAF_DATA%" - shift - goto :RUN_LOOP - -:EXECUTE_DEBUG - if "%JAVA_DEBUG_OPTS%" == "" set JAVA_DEBUG_OPTS=%DEFAULT_JAVA_DEBUG_OPTS% - set JAVA_OPTS=%JAVA_DEBUG_OPTS% %JAVA_OPTS% - shift - goto :RUN_LOOP - -:EXECUTE - SET ARGS=%1 %2 %3 %4 %5 %6 %7 %8 - rem Execute the Java Virtual Machine - cd "%KARAF_BASE%" - "%JAVA%" %JAVA_OPTS% %OPTS% -classpath "%CLASSPATH%" -Djava.endorsed.dirs="%JAVA_HOME%\jre\lib\endorsed;%JAVA_HOME%\lib\endorsed;%KARAF_HOME%\lib\endorsed" -Djava.ext.dirs="%JAVA_HOME%\jre\lib\ext;%JAVA_HOME%\lib\ext;%KARAF_HOME%\lib\ext" -Dkaraf.instances="%KARAF_HOME%\instances" -Dkaraf.home="%KARAF_HOME%" -Dkaraf.base="%KARAF_BASE%" -Dkaraf.etc="%KARAF_ETC%" -Djava.io.tmpdir="%KARAF_DATA%\tmp" -Dkaraf.data="%KARAF_DATA%" -Djava.util.logging.config.file="%KARAF_BASE%\etc\java.util.logging.properties" %KARAF_OPTS% %MAIN% %ARGS% - -rem # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # - -:END - -endlocal - -if not "%PAUSE%" == "" pause - -:END_NO_PAUSE +@echo off +rem +rem +rem Licensed to the Apache Software Foundation (ASF) under one or more +rem contributor license agreements. See the NOTICE file distributed with +rem this work for additional information regarding copyright ownership. +rem The ASF licenses this file to You under the Apache License, Version 2.0 +rem (the "License"); you may not use this file except in compliance with +rem the License. You may obtain a copy of the License at +rem +rem http://www.apache.org/licenses/LICENSE-2.0 +rem +rem Unless required by applicable law or agreed to in writing, software +rem distributed under the License is distributed on an "AS IS" BASIS, +rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +rem See the License for the specific language governing permissions and +rem limitations under the License. +rem + +if not "%ECHO%" == "" echo %ECHO% + +setlocal +set DIRNAME=%~dp0% +set PROGNAME=%~nx0% +set ARGS=%* + +rem Sourcing environment settings for karaf similar to tomcats setenv +SET KARAF_SCRIPT="karaf.bat" +if exist "%DIRNAME%setenv.bat" ( + call "%DIRNAME%setenv.bat" +) + +rem Check console window title. Set to Karaf by default +if not "%KARAF_TITLE%" == "" ( + title %KARAF_TITLE% +) else ( + title Karaf +) + +rem Check/Set up some easily accessible MIN/MAX params for JVM mem usage +if "%JAVA_MIN_MEM%" == "" ( + set JAVA_MIN_MEM=128M +) +if "%JAVA_MAX_MEM%" == "" ( + set JAVA_MAX_MEM=512M +) + +goto BEGIN + +:warn + echo %PROGNAME%: %* +goto :EOF + +:BEGIN + +rem # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # + +if not "%KARAF_HOME%" == "" ( + call :warn Ignoring predefined value for KARAF_HOME +) +set KARAF_HOME=%DIRNAME%.. +if not exist "%KARAF_HOME%" ( + call :warn KARAF_HOME is not valid: "%KARAF_HOME%" + goto END +) + +if not "%KARAF_BASE%" == "" ( + if not exist "%KARAF_BASE%" ( + call :warn KARAF_BASE is not valid: "%KARAF_BASE%" + goto END + ) +) +if "%KARAF_BASE%" == "" ( + set "KARAF_BASE=%KARAF_HOME%" +) + +if not "%KARAF_DATA%" == "" ( + if not exist "%KARAF_DATA%" ( + call :warn KARAF_DATA is not valid: "%KARAF_DATA%" + goto END + ) +) +if "%KARAF_DATA%" == "" ( + set "KARAF_DATA=%KARAF_BASE%\data" +) + +if not "%KARAF_ETC%" == "" ( + if not exist "%KARAF_ETC%" ( + call :warn KARAF_ETC is not valid: "%KARAF_ETC%" + goto END + ) +) +if "%KARAF_ETC%" == "" ( + set "KARAF_ETC=%KARAF_BASE%\etc" +) + +set LOCAL_CLASSPATH=%CLASSPATH% +set JAVA_MODE=-server + +set CLASSPATH=%LOCAL_CLASSPATH%;%KARAF_BASE%\conf +set DEFAULT_JAVA_DEBUG_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 + +if "%LOCAL_CLASSPATH%" == "" goto :KARAF_CLASSPATH_EMPTY + set CLASSPATH=%LOCAL_CLASSPATH%;%KARAF_BASE%\conf + goto :KARAF_CLASSPATH_END +:KARAF_CLASSPATH_EMPTY + set CLASSPATH=%KARAF_BASE%\conf +:KARAF_CLASSPATH_END + +rem Setup Karaf Home +if exist "%KARAF_HOME%\conf\karaf-rc.cmd" call %KARAF_HOME%\conf\karaf-rc.cmd +if exist "%HOME%\karaf-rc.cmd" call %HOME%\karaf-rc.cmd + +rem Support for loading native libraries +set PATH=%PATH%;%KARAF_BASE%\lib;%KARAF_HOME%\lib + +rem Setup the Java Virtual Machine +if not "%JAVA%" == "" goto :Check_JAVA_END + if not "%JAVA_HOME%" == "" goto :TryJDKEnd + call :warn JAVA_HOME not set; results may vary +:TryJRE + start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment" + if not exist __reg1.txt goto :TryJDK + type __reg1.txt | find "CurrentVersion" > __reg2.txt + if errorlevel 1 goto :TryJDK + for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JavaTemp=%%~x + if errorlevel 1 goto :TryJDK + set JavaTemp=%JavaTemp%## + set JavaTemp=%JavaTemp: ##=##% + set JavaTemp=%JavaTemp: ##=##% + set JavaTemp=%JavaTemp: ##=##% + set JavaTemp=%JavaTemp: ##=##% + set JavaTemp=%JavaTemp: ##=##% + set JavaTemp=%JavaTemp:##=% + del __reg1.txt + del __reg2.txt + start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\%JavaTemp%" + if not exist __reg1.txt goto :TryJDK + type __reg1.txt | find "JavaHome" > __reg2.txt + if errorlevel 1 goto :TryJDK + for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JAVA_HOME=%%~x + if errorlevel 1 goto :TryJDK + del __reg1.txt + del __reg2.txt + goto TryJDKEnd +:TryJDK + start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit" + if not exist __reg1.txt ( + goto TryRegJRE + ) + type __reg1.txt | find "CurrentVersion" > __reg2.txt + if errorlevel 1 ( + goto TryRegJRE + ) + for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JavaTemp=%%~x + if errorlevel 1 ( + goto TryRegJRE + ) + set JavaTemp=%JavaTemp%## + set JavaTemp=%JavaTemp: ##=##% + set JavaTemp=%JavaTemp: ##=##% + set JavaTemp=%JavaTemp: ##=##% + set JavaTemp=%JavaTemp: ##=##% + set JavaTemp=%JavaTemp: ##=##% + set JavaTemp=%JavaTemp:##=% + del __reg1.txt + del __reg2.txt + start /w regedit /e __reg1.txt "HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Development Kit\%JavaTemp%" + if not exist __reg1.txt ( + goto TryRegJRE + ) + type __reg1.txt | find "JavaHome" > __reg2.txt + if errorlevel 1 ( + goto TryRegJRE + ) + for /f "tokens=2 delims==" %%x in (__reg2.txt) do set JAVA_HOME=%%~x + if errorlevel 1 ( + 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%" + goto END + ) + set JAVA=%JAVA_HOME%\bin\java +:Check_JAVA_END + +if not exist "%JAVA_HOME%\bin\server\jvm.dll" ( + if not exist "%JAVA_HOME%\jre\bin\server\jvm.dll" ( + echo WARNING: Running Karaf on a Java HotSpot Client VM because server-mode is not available. + echo Install Java Developer Kit to fix this. + echo For more details see http://java.sun.com/products/hotspot/whitepaper.html#client + set JAVA_MODE=-client + ) +) + +set DEFAULT_JAVA_OPTS=%JAVA_MODE% -Xms%JAVA_MIN_MEM% -Xmx%JAVA_MAX_MEM% -Dderby.system.home="%KARAF_DATA%\derby" -Dderby.storage.fileSyncTransactionLog=true -Dcom.sun.management.jmxremote -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass + +if not "%ODL_JAVA_SECURITY_PROPERTIES%" == "" ( + set DEFAULT_JAVA_OPTS=-Djava.security.properties="%ODL_JAVA_SECURITY_PROPERTIES%" %DEFAULT_JAVA_OPTS% +) else ( + set DEFAULT_JAVA_OPTS=-Djava.security.properties="%KARAF_ETC%\odl.java.security" %DEFAULT_JAVA_OPTS% +) + +if "%JAVA_OPTS%" == "" set JAVA_OPTS=%DEFAULT_JAVA_OPTS% + +if "%EXTRA_JAVA_OPTS%" == "" goto :KARAF_EXTRA_JAVA_OPTS_END + set JAVA_OPTS=%JAVA_OPTS% %EXTRA_JAVA_OPTS% +:KARAF_EXTRA_JAVA_OPTS_END + +if "%KARAF_DEBUG%" == "" goto :KARAF_DEBUG_END + if "%1" == "stop" goto :KARAF_DEBUG_END + if "%1" == "client" goto :KARAF_DEBUG_END + rem Use the defaults if JAVA_DEBUG_OPTS was not set + if "%JAVA_DEBUG_OPTS%" == "" set JAVA_DEBUG_OPTS=%DEFAULT_JAVA_DEBUG_OPTS% + + set JAVA_OPTS=%JAVA_DEBUG_OPTS% %JAVA_OPTS% + call :warn Enabling Java debug options: %JAVA_DEBUG_OPTS% +:KARAF_DEBUG_END + +if "%KARAF_PROFILER%" == "" goto :KARAF_PROFILER_END + set KARAF_PROFILER_SCRIPT=%KARAF_HOME%\conf\profiler\%KARAF_PROFILER%.cmd + + if exist "%KARAF_PROFILER_SCRIPT%" goto :KARAF_PROFILER_END + call :warn Missing configuration for profiler '%KARAF_PROFILER%': %KARAF_PROFILER_SCRIPT% + goto END +:KARAF_PROFILER_END + +rem Setup the classpath +pushd "%KARAF_HOME%\lib" +for %%G in (karaf*.jar) do call:APPEND_TO_CLASSPATH %%G +popd +goto CLASSPATH_END + +: APPEND_TO_CLASSPATH +set filename=%~1 +set suffix=%filename:~-4% +if %suffix% equ .jar set CLASSPATH=%CLASSPATH%;%KARAF_HOME%\lib\%filename% +goto :EOF + +:CLASSPATH_END + +rem Execute the JVM or the load the profiler +if "%KARAF_PROFILER%" == "" goto :RUN + rem Execute the profiler if it has been configured + call :warn Loading profiler script: %KARAF_PROFILER_SCRIPT% + call %KARAF_PROFILER_SCRIPT% + +:RUN + SET OPTS=-Dkaraf.startLocalConsole=true -Dkaraf.startRemoteShell=true + SET MAIN=org.apache.karaf.main.Main + SET SHIFT=false + +:RUN_LOOP + if "%1" == "stop" goto :EXECUTE_STOP + if "%1" == "status" goto :EXECUTE_STATUS + if "%1" == "console" goto :EXECUTE_CONSOLE + if "%1" == "server" goto :EXECUTE_SERVER + if "%1" == "client" goto :EXECUTE_CLIENT + if "%1" == "clean" goto :EXECUTE_CLEAN + if "%1" == "debug" goto :EXECUTE_DEBUG + goto :EXECUTE + +:EXECUTE_STOP + SET MAIN=org.apache.karaf.main.Stop + shift + goto :RUN_LOOP + +:EXECUTE_STATUS + SET MAIN=org.apache.karaf.main.Status + shift + goto :RUN_LOOP + +:EXECUTE_CONSOLE + shift + goto :RUN_LOOP + +:EXECUTE_SERVER + SET OPTS=-Dkaraf.startLocalConsole=false -Dkaraf.startRemoteShell=true + shift + goto :RUN_LOOP + +:EXECUTE_CLIENT + SET OPTS=-Dkaraf.startLocalConsole=true -Dkaraf.startRemoteShell=false + shift + goto :RUN_LOOP + +:EXECUTE_CLEAN + rmdir /S /Q "%KARAF_DATA%" + shift + goto :RUN_LOOP + +:EXECUTE_DEBUG + if "%JAVA_DEBUG_OPTS%" == "" set JAVA_DEBUG_OPTS=%DEFAULT_JAVA_DEBUG_OPTS% + set JAVA_OPTS=%JAVA_DEBUG_OPTS% %JAVA_OPTS% + shift + goto :RUN_LOOP + +:EXECUTE + SET ARGS=%1 %2 %3 %4 %5 %6 %7 %8 + rem Execute the Java Virtual Machine + cd "%KARAF_BASE%" + "%JAVA%" %JAVA_OPTS% %OPTS% -classpath "%CLASSPATH%" -Djava.endorsed.dirs="%JAVA_HOME%\jre\lib\endorsed;%JAVA_HOME%\lib\endorsed;%KARAF_HOME%\lib\endorsed" -Djava.ext.dirs="%JAVA_HOME%\jre\lib\ext;%JAVA_HOME%\lib\ext;%KARAF_HOME%\lib\ext" -Dkaraf.instances="%KARAF_HOME%\instances" -Dkaraf.home="%KARAF_HOME%" -Dkaraf.base="%KARAF_BASE%" -Dkaraf.etc="%KARAF_ETC%" -Djava.io.tmpdir="%KARAF_DATA%\tmp" -Dkaraf.data="%KARAF_DATA%" -Djava.util.logging.config.file="%KARAF_BASE%\etc\java.util.logging.properties" %KARAF_OPTS% %MAIN% %ARGS% + +rem # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # + +:END + +endlocal + +if not "%PAUSE%" == "" pause + +:END_NO_PAUSE