Spring Boot Web Flux with JOOQ for interfacing with DB and Kotlin coroutines to make blocking JDBC calls run asynchronously. Now with rsockets.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

182 lines
6.5 KiB

4 years ago
  1. @REM ----------------------------------------------------------------------------
  2. @REM Licensed to the Apache Software Foundation (ASF) under one
  3. @REM or more contributor license agreements. See the NOTICE file
  4. @REM distributed with this work for additional information
  5. @REM regarding copyright ownership. The ASF licenses this file
  6. @REM to you under the Apache License, Version 2.0 (the
  7. @REM "License"); you may not use this file except in compliance
  8. @REM with the License. You may obtain a copy of the License at
  9. @REM
  10. @REM https://www.apache.org/licenses/LICENSE-2.0
  11. @REM
  12. @REM Unless required by applicable law or agreed to in writing,
  13. @REM software distributed under the License is distributed on an
  14. @REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  15. @REM KIND, either express or implied. See the License for the
  16. @REM specific language governing permissions and limitations
  17. @REM under the License.
  18. @REM ----------------------------------------------------------------------------
  19. @REM ----------------------------------------------------------------------------
  20. @REM Maven Start Up Batch script
  21. @REM
  22. @REM Required ENV vars:
  23. @REM JAVA_HOME - location of a JDK home dir
  24. @REM
  25. @REM Optional ENV vars
  26. @REM M2_HOME - location of maven2's installed home dir
  27. @REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
  28. @REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
  29. @REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
  30. @REM e.g. to debug Maven itself, use
  31. @REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
  32. @REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
  33. @REM ----------------------------------------------------------------------------
  34. @REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
  35. @echo off
  36. @REM set title of command window
  37. title %0
  38. @REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
  39. @if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO%
  40. @REM set %HOME% to equivalent of $HOME
  41. if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
  42. @REM Execute a user defined script before this one
  43. if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
  44. @REM check for pre script, once with legacy .bat ending and once with .cmd ending
  45. if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat"
  46. if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd"
  47. :skipRcPre
  48. @setlocal
  49. set ERROR_CODE=0
  50. @REM To isolate internal variables from possible post scripts, we use another setlocal
  51. @setlocal
  52. @REM ==== START VALIDATION ====
  53. if not "%JAVA_HOME%" == "" goto OkJHome
  54. echo.
  55. echo Error: JAVA_HOME not found in your environment. >&2
  56. echo Please set the JAVA_HOME variable in your environment to match the >&2
  57. echo location of your Java installation. >&2
  58. echo.
  59. goto error
  60. :OkJHome
  61. if exist "%JAVA_HOME%\bin\java.exe" goto init
  62. echo.
  63. echo Error: JAVA_HOME is set to an invalid directory. >&2
  64. echo JAVA_HOME = "%JAVA_HOME%" >&2
  65. echo Please set the JAVA_HOME variable in your environment to match the >&2
  66. echo location of your Java installation. >&2
  67. echo.
  68. goto error
  69. @REM ==== END VALIDATION ====
  70. :init
  71. @REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
  72. @REM Fallback to current working directory if not found.
  73. set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
  74. IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
  75. set EXEC_DIR=%CD%
  76. set WDIR=%EXEC_DIR%
  77. :findBaseDir
  78. IF EXIST "%WDIR%"\.mvn goto baseDirFound
  79. cd ..
  80. IF "%WDIR%"=="%CD%" goto baseDirNotFound
  81. set WDIR=%CD%
  82. goto findBaseDir
  83. :baseDirFound
  84. set MAVEN_PROJECTBASEDIR=%WDIR%
  85. cd "%EXEC_DIR%"
  86. goto endDetectBaseDir
  87. :baseDirNotFound
  88. set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
  89. cd "%EXEC_DIR%"
  90. :endDetectBaseDir
  91. IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
  92. @setlocal EnableExtensions EnableDelayedExpansion
  93. for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
  94. @endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
  95. :endReadAdditionalConfig
  96. SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
  97. set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
  98. set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
  99. set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
  100. FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
  101. IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
  102. )
  103. @REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
  104. @REM This allows using the maven wrapper in projects that prohibit checking in binary data.
  105. if exist %WRAPPER_JAR% (
  106. if "%MVNW_VERBOSE%" == "true" (
  107. echo Found %WRAPPER_JAR%
  108. )
  109. ) else (
  110. if not "%MVNW_REPOURL%" == "" (
  111. SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar"
  112. )
  113. if "%MVNW_VERBOSE%" == "true" (
  114. echo Couldn't find %WRAPPER_JAR%, downloading it ...
  115. echo Downloading from: %DOWNLOAD_URL%
  116. )
  117. powershell -Command "&{"^
  118. "$webclient = new-object System.Net.WebClient;"^
  119. "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
  120. "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
  121. "}"^
  122. "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
  123. "}"
  124. if "%MVNW_VERBOSE%" == "true" (
  125. echo Finished downloading %WRAPPER_JAR%
  126. )
  127. )
  128. @REM End of extension
  129. @REM Provide a "standardized" way to retrieve the CLI args that will
  130. @REM work with both Windows and non-Windows executions.
  131. set MAVEN_CMD_LINE_ARGS=%*
  132. %MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
  133. if ERRORLEVEL 1 goto error
  134. goto end
  135. :error
  136. set ERROR_CODE=1
  137. :end
  138. @endlocal & set ERROR_CODE=%ERROR_CODE%
  139. if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost
  140. @REM check for post script, once with legacy .bat ending and once with .cmd ending
  141. if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat"
  142. if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd"
  143. :skipRcPost
  144. @REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
  145. if "%MAVEN_BATCH_PAUSE%" == "on" pause
  146. if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE%
  147. exit /B %ERROR_CODE%