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