| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124 |
- @REM Copyright 1999-2019 Seata.io Group.
- @REM
- @REM Licensed under the Apache License, Version 2.0 (the "License");
- @REM you may not use this file except in compliance with the License.
- @REM 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.
- @echo off
- chcp 65001
- set ERROR_CODE=0
- :init
- @REM Decide how to startup depending on the version of windows
- @REM -- Win98ME
- if NOT "%OS%"=="Windows_NT" goto Win9xArg
- @REM set local scope for the variables with windows NT shell
- if "%OS%"=="Windows_NT" @setlocal
- @REM -- 4NT shell
- if "%eval[2+2]" == "4" goto 4NTArgs
- @REM -- Regular WinNT shell
- set CMD_LINE_ARGS=%*
- goto WinNTGetScriptDir
- @REM The 4NT Shell from jp software
- :4NTArgs
- set CMD_LINE_ARGS=%$
- goto WinNTGetScriptDir
- :Win9xArg
- @REM Slurp the command line arguments. This loop allows for an unlimited number
- @REM of arguments (up to the command line limit, anyway).
- set CMD_LINE_ARGS=
- :Win9xApp
- if %1a==a goto Win9xGetScriptDir
- set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1
- shift
- goto Win9xApp
- :Win9xGetScriptDir
- set SAVEDIR=%CD%
- %0\
- cd %0\..\..
- set BASEDIR=%CD%
- cd %SAVEDIR%
- set SAVE_DIR=
- goto repoSetup
- :WinNTGetScriptDir
- set BASEDIR=%~dp0
- set BASEDIR=%BASEDIR:~0,-5%
- :repoSetup
- set REPO=
- if "%JAVACMD%"=="" set JAVACMD=java
- if "%REPO%"=="" set REPO=%BASEDIR%\lib
- set CLASSPATH="%BASEDIR%"\conf;"%REPO%"\*
- set ENDORSED_DIR=
- if NOT "%ENDORSED_DIR%" == "" set CLASSPATH="%BASEDIR%"\%ENDORSED_DIR%\*;%CLASSPATH%
- if NOT "%CLASSPATH_PREFIX%" == "" set CLASSPATH=%CLASSPATH_PREFIX%;%CLASSPATH%
- @REM Reaching here means variables are defined and arguments have been captured
- :endInit
- if exist %BASEDIR%/logs (
- echo "%BASEDIR%/logs"
- ) else (
- md "%BASEDIR%/logs"
- )
- if "%SKYWALKING_ENABLE%"=="true" (
- set SKYWALKING_OPTS=-javaagent:"%BASEDIR%"/ext/apm-skywalking/skywalking-agent.jar -Dskywalking_config="%BASEDIR%"/ext/apm-skywalking/config/agent.config -Dskywalking.logging.dir="%BASEDIR%"/logs
- echo "apm-skywalking enabled opts: %SKYWALKING_OPTS%"
- ) else (
- echo "apm-skywalking not enabled"
- )
- %JAVACMD% %JAVA_OPTS% %SKYWALKING_OPTS% -server -Dloader.path="%BASEDIR%"/lib -Xmx2048m -Xms2048m -Xmn1024m -Xss512k -XX:SurvivorRatio=10 -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m -XX:MaxDirectMemorySize=1024m -XX:-OmitStackTraceInFastThrow -XX:-UseAdaptiveSizePolicy -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath="%BASEDIR%"/logs/java_heapdump.hprof -XX:+DisableExplicitGC -Xloggc:"%BASEDIR%"/logs/seata_gc.log -verbose:gc -Dio.netty.leakDetectionLevel=advanced -classpath %CLASSPATH% -Dapp.name="seata-server" -Dapp.repo="%REPO%" -Dapp.home="%BASEDIR%" -Dbasedir="%BASEDIR%" -Dspring.config.location="%BASEDIR%"/conf/application.yml -Dlogging.config="%BASEDIR%"/conf/logback-spring.xml -jar "%BASEDIR%"/target/seata-server.jar %CMD_LINE_ARGS%
- if %ERRORLEVEL% NEQ 0 goto error
- goto end
- :error
- if "%OS%"=="Windows_NT" @endlocal
- set ERROR_CODE=%ERRORLEVEL%
- :end
- @REM set local scope for the variables with windows NT shell
- if "%OS%"=="Windows_NT" goto endNT
- @REM For old DOS remove the set variables from ENV - we assume they were not set
- @REM before we started - at least we don't leave any baggage around
- set CMD_LINE_ARGS=
- goto postExec
- :endNT
- @REM If error code is set to 1 then the endlocal was done already in :error.
- if %ERROR_CODE% EQU 0 @endlocal
- :postExec
- if "%FORCE_EXIT_ON_ERROR%" == "on" (
- if %ERROR_CODE% NEQ 0 exit %ERROR_CODE%
- )
- exit /B %ERROR_CODE%
|