Administrator
Published on 2025-12-02 / 7 Visits
0
0

Maven批量打包bat脚本

Maven 批量打包bat脚本

@echo off
chcp 65001 >nul
setlocal enabledelayedexpansion

set JDK_PATH=C:\Program Files\Java\jdk-11.0.15
set MAVEN_HOME=C:\apache-maven-3.9.6
set MVN_SETTINGS=D:\maven\conf\settings.xml

if not exist "%MAVEN_HOME%\bin\mvn.cmd" (echo Maven 路径错误 & pause & exit /b 1)
set JAVA_HOME=%JDK_PATH%
set PATH=%JAVA_HOME%\bin;%MAVEN_HOME%\bin;%PATH%
set MVN_CMD="%MAVEN_HOME%\bin\mvn.cmd"

:: 使用 ; 分隔路径和命令
set PROJECTS[0]=D:\develop\project_jy\1289-sep\ddp-common;clean install -DskipTests
set PROJECTS[1]=D:\develop\project_jy\1289-sep\ddp-pay;clean package -DskipTests
set PROJECTS[2]=D:\develop\project_jy\1289-sep\ddp-order;clean install

:: 自动计算数量
set COUNT=0
:count_loop
if defined PROJECTS[%COUNT%] (set /a COUNT+=1 & goto count_loop)
set /a MAX=%COUNT%-1

for /L %%i in (0,1,%MAX%) do (
    set "ENTRY=!PROJECTS[%%i]!"
    for /f "tokens=1,2 delims=;" %%a in ("!ENTRY!") do (
        set "DIR=%%a"
        set "ARGS=%%b"
    )
    echo.
    echo [%%i] 进入: !DIR!
    cd /d "!DIR!" || (echo 目录错误 & pause & exit /b 1)
    if not exist pom.xml (echo 无 pom.xml & pause & exit /b 1)
    call %MVN_CMD% -s "%MVN_SETTINGS%" -o !ARGS!
    if !errorlevel! neq 0 (echo 失败 & pause & exit /b 1)
    echo [✓] 成功
)

echo.
echo 全部完成!
pause

Comment