From 8902f62835387d5e05b236ff5fe1d0288b280df0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Aug 2026 18:39:36 +0000 Subject: [PATCH] Bump org.apache.maven.wrapper:maven-wrapper from 3.1.1 to 3.3.4 Bumps [org.apache.maven.wrapper:maven-wrapper](https://github.com/apache/maven-wrapper) from 3.1.1 to 3.3.4. - [Release notes](https://github.com/apache/maven-wrapper/releases) - [Commits](https://github.com/apache/maven-wrapper/compare/maven-wrapper-3.1.1...maven-wrapper-3.3.4) --- updated-dependencies: - dependency-name: org.apache.maven.wrapper:maven-wrapper dependency-version: 3.3.4 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- .mvn/wrapper/maven-wrapper.jar | Bin 59925 -> 63093 bytes .mvn/wrapper/maven-wrapper.properties | 20 +- mvnw | 329 ++++++++++++--------- mvnw.cmd | 393 ++++++++++++++------------ 4 files changed, 399 insertions(+), 343 deletions(-) diff --git a/.mvn/wrapper/maven-wrapper.jar b/.mvn/wrapper/maven-wrapper.jar index bf82ff01c6cdae4a1bb754a6e062954d77ac5c11..eebc3c18b4e0bce4a2a9e66be24c4a410f17a1fa 100644 GIT binary patch delta 53319 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 RIc0m;j-SEdx?oZi^MB**xrhJ& delta 50295 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 diff --git a/.mvn/wrapper/maven-wrapper.properties b/.mvn/wrapper/maven-wrapper.properties index 4a84306..970a3d0 100644 --- a/.mvn/wrapper/maven-wrapper.properties +++ b/.mvn/wrapper/maven-wrapper.properties @@ -1,18 +1,4 @@ -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. +wrapperVersion=3.3.4 +distributionType=bin distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.16/apache-maven-3.9.16-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar +wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.3.4/maven-wrapper-3.3.4.jar diff --git a/mvnw b/mvnw index b7f0646..1ddd97b 100755 --- a/mvnw +++ b/mvnw @@ -19,7 +19,7 @@ # ---------------------------------------------------------------------------- # ---------------------------------------------------------------------------- -# Apache Maven Wrapper startup batch script, version 3.1.1 +# Apache Maven Wrapper startup batch script, version 3.3.4 # # Required ENV vars: # ------------------ @@ -33,252 +33,303 @@ # MAVEN_SKIP_RC - flag to disable loading of mavenrc files # ---------------------------------------------------------------------------- -if [ -z "$MAVEN_SKIP_RC" ] ; then +if [ -z "$MAVEN_SKIP_RC" ]; then - if [ -f /usr/local/etc/mavenrc ] ; then + if [ -f /usr/local/etc/mavenrc ]; then . /usr/local/etc/mavenrc fi - if [ -f /etc/mavenrc ] ; then + if [ -f /etc/mavenrc ]; then . /etc/mavenrc fi - if [ -f "$HOME/.mavenrc" ] ; then + if [ -f "$HOME/.mavenrc" ]; then . "$HOME/.mavenrc" fi fi # OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; +cygwin=false +darwin=false mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - JAVA_HOME="`/usr/libexec/java_home`"; export JAVA_HOME - else - JAVA_HOME="/Library/Java/Home"; export JAVA_HOME - fi +case "$(uname)" in +CYGWIN*) cygwin=true ;; +MINGW*) mingw=true ;; +Darwin*) + darwin=true + # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home + # See https://developer.apple.com/library/mac/qa/qa1170/_index.html + if [ -z "$JAVA_HOME" ]; then + if [ -x "/usr/libexec/java_home" ]; then + JAVA_HOME="$(/usr/libexec/java_home)" + export JAVA_HOME + else + JAVA_HOME="/Library/Java/Home" + export JAVA_HOME fi - ;; + fi + ;; esac -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` +if [ -z "$JAVA_HOME" ]; then + if [ -r /etc/gentoo-release ]; then + JAVA_HOME=$(java-config --jre-home) fi fi # For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +if $cygwin; then + [ -n "$JAVA_HOME" ] \ + && JAVA_HOME=$(cygpath --unix "$JAVA_HOME") + [ -n "$CLASSPATH" ] \ + && CLASSPATH=$(cygpath --path --unix "$CLASSPATH") fi # For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" +if $mingw; then + [ -n "$JAVA_HOME" ] && [ -d "$JAVA_HOME" ] \ + && JAVA_HOME="$( + cd "$JAVA_HOME" || ( + echo "cannot cd into $JAVA_HOME." >&2 + exit 1 + ) + pwd + )" fi if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then + javaExecutable="$(which javac)" + if [ -n "$javaExecutable" ] && ! [ "$(expr "$javaExecutable" : '\([^ ]*\)')" = "no" ]; then # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" + readLink=$(which readlink) + if [ ! "$(expr "$readLink" : '\([^ ]*\)')" = "no" ]; then + if $darwin; then + javaHome="$(dirname "$javaExecutable")" + javaExecutable="$(cd "$javaHome" && pwd -P)/javac" else - javaExecutable="`readlink -f \"$javaExecutable\"`" + javaExecutable="$(readlink -f "$javaExecutable")" fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` + javaHome="$(dirname "$javaExecutable")" + javaHome=$(expr "$javaHome" : '\(.*\)/bin') JAVA_HOME="$javaHome" export JAVA_HOME fi fi fi -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then +if [ -z "$JAVACMD" ]; then + if [ -n "$JAVA_HOME" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then # IBM's JDK on AIX uses strange locations for the executables JAVACMD="$JAVA_HOME/jre/sh/java" else JAVACMD="$JAVA_HOME/bin/java" fi else - JAVACMD="`\\unset -f command; \\command -v java`" + JAVACMD="$( + \unset -f command 2>/dev/null + \command -v java + )" fi fi -if [ ! -x "$JAVACMD" ] ; then +if [ ! -x "$JAVACMD" ]; then echo "Error: JAVA_HOME is not defined correctly." >&2 echo " We cannot execute $JAVACMD" >&2 exit 1 fi -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." +if [ -z "$JAVA_HOME" ]; then + echo "Warning: JAVA_HOME environment variable is not set." >&2 fi # traverses directory structure from process work directory to filesystem root # first directory with .mvn subdirectory is considered project base directory find_maven_basedir() { - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" + if [ -z "$1" ]; then + echo "Path not specified to find_maven_basedir" >&2 return 1 fi basedir="$1" wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then + while [ "$wdir" != '/' ]; do + if [ -d "$wdir"/.mvn ]; then basedir=$wdir break fi # workaround for JBEAP-8937 (on Solaris 10/Sparc) if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` + wdir=$( + cd "$wdir/.." || exit 1 + pwd + ) fi # end of workaround done - printf '%s' "$(cd "$basedir"; pwd)" + printf '%s' "$( + cd "$basedir" || exit 1 + pwd + )" } # concatenates all lines of a file concat_lines() { if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" + # Remove \r in case we run on Windows within Git Bash + # and check out the repository with auto CRLF management + # enabled. Otherwise, we may read lines that are delimited with + # \r\n and produce $'-Xarg\r' rather than -Xarg due to word + # splitting rules. + tr -s '\r\n' ' ' <"$1" fi } -BASE_DIR=$(find_maven_basedir "$(dirname $0)") +log() { + if [ "$MVNW_VERBOSE" = true ]; then + printf '%s\n' "$1" + fi +} + +BASE_DIR=$(find_maven_basedir "$(dirname "$0")") if [ -z "$BASE_DIR" ]; then - exit 1; + exit 1 fi -MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}; export MAVEN_PROJECTBASEDIR -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR -fi +MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} +export MAVEN_PROJECTBASEDIR +log "$MAVEN_PROJECTBASEDIR" + +trim() { + # MWRAPPER-139: + # Trims trailing and leading whitespace, carriage returns, tabs, and linefeeds. + # Needed for removing poorly interpreted newline sequences when running in more + # exotic environments such as mingw bash on Windows. + printf "%s" "${1}" | tr -d '[:space:]' +} ########################################################################################## # Extension to allow automatically downloading the maven-wrapper.jar from Maven-central # This allows using the maven wrapper in projects that prohibit checking in binary data. ########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi +wrapperJarPath="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" +if [ -r "$wrapperJarPath" ]; then + log "Found $wrapperJarPath" else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - wrapperUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar" + log "Couldn't find $wrapperJarPath, downloading it ..." + + if [ -n "$MVNW_REPOURL" ]; then + wrapperUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.3.4/maven-wrapper-3.3.4.jar" + else + wrapperUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.3.4/maven-wrapper-3.3.4.jar" + fi + while IFS="=" read -r key value; do + case "$key" in wrapperUrl) + wrapperUrl=$(trim "${value-}") + break + ;; + esac + done <"$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.properties" + log "Downloading from: $wrapperUrl" + + if $cygwin; then + wrapperJarPath=$(cygpath --path --windows "$wrapperJarPath") + fi + + if command -v wget >/dev/null; then + log "Found wget ... using wget" + [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--quiet" + if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then + wget ${QUIET:+"$QUIET"} "$wrapperUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" else - wrapperUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar" + wget ${QUIET:+"$QUIET"} --http-user="$MVNW_USERNAME" --http-password="$MVNW_PASSWORD" "$wrapperUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) wrapperUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $wrapperUrl" + elif command -v curl >/dev/null; then + log "Found curl ... using curl" + [ "$MVNW_VERBOSE" = true ] && QUIET="" || QUIET="--silent" + if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then + curl ${QUIET:+"$QUIET"} -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm -f "$wrapperJarPath" + else + curl ${QUIET:+"$QUIET"} --user "$MVNW_USERNAME:$MVNW_PASSWORD" -o "$wrapperJarPath" "$wrapperUrl" -f -L || rm -f "$wrapperJarPath" fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" + else + log "Falling back to using Java to download" + javaSource="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/MavenWrapperDownloader.java" + javaClass="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/MavenWrapperDownloader.class" + # For Cygwin, switch paths to Windows format before running javac if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` + javaSource=$(cygpath --path --windows "$javaSource") + javaClass=$(cygpath --path --windows "$javaClass") fi - - if command -v wget > /dev/null; then - QUIET="--quiet" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - QUIET="" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget $QUIET "$wrapperUrl" -O "$wrapperJarPath" - else - wget $QUIET --http-user="$MVNW_USERNAME" --http-password="$MVNW_PASSWORD" "$wrapperUrl" -O "$wrapperJarPath" - fi - [ $? -eq 0 ] || rm -f "$wrapperJarPath" - elif command -v curl > /dev/null; then - QUIET="--silent" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - QUIET="" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl $QUIET -o "$wrapperJarPath" "$wrapperUrl" -f -L - else - curl $QUIET --user "$MVNW_USERNAME:$MVNW_PASSWORD" -o "$wrapperJarPath" "$wrapperUrl" -f -L - fi - [ $? -eq 0 ] || rm -f "$wrapperJarPath" - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaSource="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaSource=`cygpath --path --windows "$javaSource"` - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaSource" ]; then - if [ ! -e "$javaClass" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaSource") - fi - if [ -e "$javaClass" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi + if [ -e "$javaSource" ]; then + if [ ! -e "$javaClass" ]; then + log " - Compiling MavenWrapperDownloader.java ..." + ("$JAVA_HOME/bin/javac" "$javaSource") + fi + if [ -e "$javaClass" ]; then + log " - Running MavenWrapperDownloader.java ..." + ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$wrapperUrl" "$wrapperJarPath") || rm -f "$wrapperJarPath" + fi fi + fi fi ########################################################################################## # End of extension ########################################################################################## +# If specified, validate the SHA-256 sum of the Maven wrapper jar file +wrapperSha256Sum="" +while IFS="=" read -r key value; do + case "$key" in wrapperSha256Sum) + wrapperSha256Sum=$(trim "${value-}") + break + ;; + esac +done <"$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.properties" +if [ -n "$wrapperSha256Sum" ]; then + wrapperSha256Result=false + if command -v sha256sum >/dev/null; then + if echo "$wrapperSha256Sum $wrapperJarPath" | sha256sum -c - >/dev/null 2>&1; then + wrapperSha256Result=true + fi + elif command -v shasum >/dev/null; then + if echo "$wrapperSha256Sum $wrapperJarPath" | shasum -a 256 -c >/dev/null 2>&1; then + wrapperSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'wrapperSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $wrapperSha256Result = false ]; then + echo "Error: Failed to validate Maven wrapper SHA-256, your Maven wrapper might be compromised." >&2 + echo "Investigate or delete $wrapperJarPath to attempt a clean download." >&2 + echo "If you updated your Maven version, you need to update the specified wrapperSha256Sum property." >&2 + exit 1 + fi +fi + MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" # For Cygwin, switch paths to Windows format before running java if $cygwin; then - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` + [ -n "$JAVA_HOME" ] \ + && JAVA_HOME=$(cygpath --path --windows "$JAVA_HOME") + [ -n "$CLASSPATH" ] \ + && CLASSPATH=$(cygpath --path --windows "$CLASSPATH") + [ -n "$MAVEN_PROJECTBASEDIR" ] \ + && MAVEN_PROJECTBASEDIR=$(cygpath --path --windows "$MAVEN_PROJECTBASEDIR") fi # Provide a "standardized" way to retrieve the CLI args that will # work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" +MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $*" export MAVEN_CMD_LINE_ARGS WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain +# shellcheck disable=SC2086 # safe args exec "$JAVACMD" \ $MAVEN_OPTS \ $MAVEN_DEBUG_OPTS \ diff --git a/mvnw.cmd b/mvnw.cmd index 474c9d6..c453424 100644 --- a/mvnw.cmd +++ b/mvnw.cmd @@ -1,187 +1,206 @@ -@REM ---------------------------------------------------------------------------- -@REM Licensed to the Apache Software Foundation (ASF) under one -@REM or more contributor license agreements. See the NOTICE file -@REM distributed with this work for additional information -@REM regarding copyright ownership. The ASF licenses this file -@REM to you under the Apache License, Version 2.0 (the -@REM "License"); you may not use this file except in compliance -@REM with 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, -@REM software distributed under the License is distributed on an -@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -@REM KIND, either express or implied. See the License for the -@REM specific language governing permissions and limitations -@REM under the License. -@REM ---------------------------------------------------------------------------- - -@REM ---------------------------------------------------------------------------- -@REM Apache Maven Wrapper startup batch script, version 3.1.1 -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir -@REM -@REM Optional ENV vars -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files -@REM ---------------------------------------------------------------------------- - -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* -if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set WRAPPER_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar" - -FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET WRAPPER_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET WRAPPER_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %WRAPPER_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%WRAPPER_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) -) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% ^ - %JVM_CONFIG_MAVEN_PROPS% ^ - %MAVEN_OPTS% ^ - %MAVEN_DEBUG_OPTS% ^ - -classpath %WRAPPER_JAR% ^ - "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ - %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" -if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%"=="on" pause - -if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% - -cmd /C exit /B %ERROR_CODE% +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with 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, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.4 +@REM +@REM Required ENV vars: +@REM JAVA_HOME - location of a JDK home dir +@REM +@REM Optional ENV vars +@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands +@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending +@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven +@REM e.g. to debug Maven itself, use +@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM ---------------------------------------------------------------------------- + +@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' +@echo off +@REM set title of command window +title %0 +@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' +@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% + +@REM set %HOME% to equivalent of $HOME +if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") + +@REM Execute a user defined script before this one +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre +@REM check for pre script, once with legacy .bat ending and once with .cmd ending +if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* +if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* +:skipRcPre + +@setlocal + +set ERROR_CODE=0 + +@REM To isolate internal variables from possible post scripts, we use another setlocal +@setlocal + +@REM ==== START VALIDATION ==== +if not "%JAVA_HOME%" == "" goto OkJHome + +echo. >&2 +echo Error: JAVA_HOME not found in your environment. >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. >&2 +goto error + +:OkJHome +if exist "%JAVA_HOME%\bin\java.exe" goto init + +echo. >&2 +echo Error: JAVA_HOME is set to an invalid directory. >&2 +echo JAVA_HOME = "%JAVA_HOME%" >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. >&2 +goto error + +@REM ==== END VALIDATION ==== + +:init + +@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". +@REM Fallback to current working directory if not found. + +set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% +IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir + +set EXEC_DIR=%CD% +set WDIR=%EXEC_DIR% +:findBaseDir +IF EXIST "%WDIR%"\.mvn goto baseDirFound +cd .. +IF "%WDIR%"=="%CD%" goto baseDirNotFound +set WDIR=%CD% +goto findBaseDir + +:baseDirFound +set MAVEN_PROJECTBASEDIR=%WDIR% +cd "%EXEC_DIR%" +goto endDetectBaseDir + +:baseDirNotFound +set MAVEN_PROJECTBASEDIR=%EXEC_DIR% +cd "%EXEC_DIR%" + +:endDetectBaseDir + +IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig + +@setlocal EnableExtensions EnableDelayedExpansion +for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a +@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% + +:endReadAdditionalConfig + +SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" +set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" +set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +set WRAPPER_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.3.4/maven-wrapper-3.3.4.jar" + +FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( + IF "%%A"=="wrapperUrl" SET WRAPPER_URL=%%B +) + +@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central +@REM This allows using the maven wrapper in projects that prohibit checking in binary data. +if exist %WRAPPER_JAR% ( + if "%MVNW_VERBOSE%" == "true" ( + echo Found %WRAPPER_JAR% + ) +) else ( + if not "%MVNW_REPOURL%" == "" ( + SET WRAPPER_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.3.4/maven-wrapper-3.3.4.jar" + ) + if "%MVNW_VERBOSE%" == "true" ( + echo Couldn't find %WRAPPER_JAR%, downloading it ... + echo Downloading from: %WRAPPER_URL% + ) + + powershell -Command "&{"^ + "$webclient = new-object System.Net.WebClient;"^ + "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ + "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ + "}"^ + "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%WRAPPER_URL%', '%WRAPPER_JAR%')"^ + "}" + if "%MVNW_VERBOSE%" == "true" ( + echo Finished downloading %WRAPPER_JAR% + ) +) +@REM End of extension + +@REM If specified, validate the SHA-256 sum of the Maven wrapper jar file +SET WRAPPER_SHA_256_SUM="" +FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( + IF "%%A"=="wrapperSha256Sum" SET WRAPPER_SHA_256_SUM=%%B +) +IF NOT %WRAPPER_SHA_256_SUM%=="" ( + powershell -Command "&{"^ + "Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash;"^ + "$hash = (Get-FileHash \"%WRAPPER_JAR%\" -Algorithm SHA256).Hash.ToLower();"^ + "If('%WRAPPER_SHA_256_SUM%' -ne $hash){"^ + " Write-Error 'Error: Failed to validate Maven wrapper SHA-256, your Maven wrapper might be compromised.';"^ + " Write-Error 'Investigate or delete %WRAPPER_JAR% to attempt a clean download.';"^ + " Write-Error 'If you updated your Maven version, you need to update the specified wrapperSha256Sum property.';"^ + " exit 1;"^ + "}"^ + "}" + if ERRORLEVEL 1 goto error +) + +@REM Provide a "standardized" way to retrieve the CLI args that will +@REM work with both Windows and non-Windows executions. +set MAVEN_CMD_LINE_ARGS=%* + +%MAVEN_JAVA_EXE% ^ + %JVM_CONFIG_MAVEN_PROPS% ^ + %MAVEN_OPTS% ^ + %MAVEN_DEBUG_OPTS% ^ + -classpath %WRAPPER_JAR% ^ + "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ + %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* +if ERRORLEVEL 1 goto error +goto end + +:error +set ERROR_CODE=1 + +:end +@endlocal & set ERROR_CODE=%ERROR_CODE% + +if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost +@REM check for post script, once with legacy .bat ending and once with .cmd ending +if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" +if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" +:skipRcPost + +@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' +if "%MAVEN_BATCH_PAUSE%"=="on" pause + +if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% + +cmd /C exit /B %ERROR_CODE%