github.com/GoogleContainerTools/skaffold@v1.39.18/examples/jib/mvnw.cmd (about)

     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    http://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  
    20  @REM ----------------------------------------------------------------------------
    21  @REM Maven Start Up Batch script
    22  @REM
    23  @REM Required ENV vars:
    24  @REM JAVA_HOME - location of a JDK home dir
    25  @REM
    26  @REM Optional ENV vars
    27  @REM M2_HOME - location of maven2's installed home dir
    28  @REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
    29  @REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
    30  @REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
    31  @REM     e.g. to debug Maven itself, use
    32  @REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
    33  @REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
    34  @REM ----------------------------------------------------------------------------
    35  
    36  @REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
    37  @echo off
    38  @REM set title of command window
    39  title %0
    40  @REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
    41  @if "%MAVEN_BATCH_ECHO%" == "on"  echo %MAVEN_BATCH_ECHO%
    42  
    43  @REM set %HOME% to equivalent of $HOME
    44  if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")
    45  
    46  @REM Execute a user defined script before this one
    47  if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
    48  @REM check for pre script, once with legacy .bat ending and once with .cmd ending
    49  if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %*
    50  if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %*
    51  :skipRcPre
    52  
    53  @setlocal
    54  
    55  set ERROR_CODE=0
    56  
    57  @REM To isolate internal variables from possible post scripts, we use another setlocal
    58  @setlocal
    59  
    60  @REM ==== START VALIDATION ====
    61  if not "%JAVA_HOME%" == "" goto OkJHome
    62  
    63  echo.
    64  echo Error: JAVA_HOME not found in your environment. >&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  
    70  :OkJHome
    71  if exist "%JAVA_HOME%\bin\java.exe" goto init
    72  
    73  echo.
    74  echo Error: JAVA_HOME is set to an invalid directory. >&2
    75  echo JAVA_HOME = "%JAVA_HOME%" >&2
    76  echo Please set the JAVA_HOME variable in your environment to match the >&2
    77  echo location of your Java installation. >&2
    78  echo.
    79  goto error
    80  
    81  @REM ==== END VALIDATION ====
    82  
    83  :init
    84  
    85  @REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
    86  @REM Fallback to current working directory if not found.
    87  
    88  set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
    89  IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir
    90  
    91  set EXEC_DIR=%CD%
    92  set WDIR=%EXEC_DIR%
    93  :findBaseDir
    94  IF EXIST "%WDIR%"\.mvn goto baseDirFound
    95  cd ..
    96  IF "%WDIR%"=="%CD%" goto baseDirNotFound
    97  set WDIR=%CD%
    98  goto findBaseDir
    99  
   100  :baseDirFound
   101  set MAVEN_PROJECTBASEDIR=%WDIR%
   102  cd "%EXEC_DIR%"
   103  goto endDetectBaseDir
   104  
   105  :baseDirNotFound
   106  set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
   107  cd "%EXEC_DIR%"
   108  
   109  :endDetectBaseDir
   110  
   111  IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig
   112  
   113  @setlocal EnableExtensions EnableDelayedExpansion
   114  for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
   115  @endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%
   116  
   117  :endReadAdditionalConfig
   118  
   119  SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
   120  set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
   121  set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain
   122  
   123  set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
   124  
   125  FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
   126      IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
   127  )
   128  
   129  @REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
   130  @REM This allows using the maven wrapper in projects that prohibit checking in binary data.
   131  if exist %WRAPPER_JAR% (
   132      if "%MVNW_VERBOSE%" == "true" (
   133          echo Found %WRAPPER_JAR%
   134      )
   135  ) else (
   136      if not "%MVNW_REPOURL%" == "" (
   137          SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
   138      )
   139      if "%MVNW_VERBOSE%" == "true" (
   140          echo Couldn't find %WRAPPER_JAR%, downloading it ...
   141          echo Downloading from: %DOWNLOAD_URL%
   142      )
   143  
   144      powershell -Command "&{"^
   145  		"$webclient = new-object System.Net.WebClient;"^
   146  		"if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
   147  		"$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
   148  		"}"^
   149  		"[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
   150  		"}"
   151      if "%MVNW_VERBOSE%" == "true" (
   152          echo Finished downloading %WRAPPER_JAR%
   153      )
   154  )
   155  @REM End of extension
   156  
   157  @REM Provide a "standardized" way to retrieve the CLI args that will
   158  @REM work with both Windows and non-Windows executions.
   159  set MAVEN_CMD_LINE_ARGS=%*
   160  
   161  %MAVEN_JAVA_EXE% ^
   162    %JVM_CONFIG_MAVEN_PROPS% ^
   163    %MAVEN_OPTS% ^
   164    %MAVEN_DEBUG_OPTS% ^
   165    -classpath %WRAPPER_JAR% ^
   166    "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^
   167    %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
   168  if ERRORLEVEL 1 goto error
   169  goto end
   170  
   171  :error
   172  set ERROR_CODE=1
   173  
   174  :end
   175  @endlocal & set ERROR_CODE=%ERROR_CODE%
   176  
   177  if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost
   178  @REM check for post script, once with legacy .bat ending and once with .cmd ending
   179  if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat"
   180  if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd"
   181  :skipRcPost
   182  
   183  @REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
   184  if "%MAVEN_BATCH_PAUSE%"=="on" pause
   185  
   186  if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE%
   187  
   188  cmd /C exit /B %ERROR_CODE%