From 85349a2592c8547d05d20e048b50a9ea2c9e69e0 Mon Sep 17 00:00:00 2001 From: Marc Guillemot Date: Thu, 18 Sep 2025 10:06:39 +0200 Subject: [PATCH] Add support for MAVEN_PROJECTBASEDIR substitution (backport of MNG-8598) --- apache-maven/src/bin/mvn | 8 ++++++-- apache-maven/src/bin/mvn.cmd | 8 +++++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/apache-maven/src/bin/mvn b/apache-maven/src/bin/mvn index 47dc7d7f4ed0..8869c653d8f0 100755 --- a/apache-maven/src/bin/mvn +++ b/apache-maven/src/bin/mvn @@ -172,10 +172,14 @@ find_file_argument_basedir() { ) } -# concatenates all lines of a file +# concatenates all lines of a file and replaces variables concat_lines() { if [ -f "$1" ]; then - echo "`tr -s '\r\n' ' ' < "$1"`" + # First transform line endings to spaces + content=$(tr -s '\r\n' ' ' < "$1") + # Handle both ${var} and $var formats, only substitute MAVEN_PROJECTBASEDIR + echo "$content" | sed -e "s|\${MAVEN_PROJECTBASEDIR}|$MAVEN_PROJECTBASEDIR|g" \ + -e "s|\$MAVEN_PROJECTBASEDIR|$MAVEN_PROJECTBASEDIR|g" fi } diff --git a/apache-maven/src/bin/mvn.cmd b/apache-maven/src/bin/mvn.cmd index affbe4318216..f76b9595a5c6 100644 --- a/apache-maven/src/bin/mvn.cmd +++ b/apache-maven/src/bin/mvn.cmd @@ -165,7 +165,13 @@ set "jvmConfig=\.mvn\jvm.config" if not exist "%MAVEN_PROJECTBASEDIR%%jvmConfig%" 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 +set JVM_CONFIG_MAVEN_OPTS= +for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do ( + set "line=%%a" + set "line=!line:$MAVEN_PROJECTBASEDIR=%MAVEN_PROJECTBASEDIR%!" + set "line=!line:${MAVEN_PROJECTBASEDIR}=%MAVEN_PROJECTBASEDIR%!" + set JVM_CONFIG_MAVEN_OPTS=!JVM_CONFIG_MAVEN_OPTS! !line! +) @endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% :endReadAdditionalConfig