分享一个好用的maven一键打包windows脚本,新建文本文件,后缀改为bat,将以下内容复制到文件中,将脚本文件放在需要打包的模块并列的目录中,双击运行脚本即可。需事先配置好maven环境变量M2_HOME为maven根目录
(1)一键打包所有模块,脚本如下:
@echo off
echo ==========================start to install all modules===============================
if not exist "%M2_HOME%\bin\mvn.cmd" echo Please set the M2_HOME variable in your environment,We need maven! & EXIT /B 2
set SERVER=common-starter eureka-server config-server device-demo message-system report-system udp-server
cd %~dp0
for %%a in (%SERVER%) do (
cd "%%a"
call mvn clean install -DskipTests
cd ../
)
timeout /T 3 /NOBREAK
exit
(2)若需要手动选择打包单个模块,可使用如下脚本:
@echo off
if not exist "%M2_HOME%\bin\mvn.cmd" echo Please set the M2_HOME variable in your environment,We need maven! & EXIT /B 2
set BASE_DIR=%~dp0
set COMMON_STARTER_DIR=common-starter
set EUREKA_DIR=eureka-server
set CONFIG_DIR=config-server
set DEVICE_DIR=device-demo
:begin
echo ==========================Please choose the module to install===============================
echo 0 exit
echo 1 %COMMON_STARTER_DIR%
echo 2 %EUREKA_DIR%
echo 3 %CONFIG_DIR%
echo 4 %DEVICE_DIR%
rem cls是清除当前界面信息(如果不想看到maven打包信息,可添加),explorer target是打开target目录
set "MVN_OPT=%MVN_OPT% clean install -DskipTests && cls && explorer target"
set/p a=Please choose the number,and press Enter key:
if "%a%"=="1" goto :A
if "%a%"=="2" goto :B
if "%a%"=="3" goto :C
if "%a%"=="4" goto :D
if "%a%"=="0" goto :end
echo\
echo input error,please choose again!
echo\
goto :begin
:A
cd %BASE_DIR%\%COMMON_STARTER_DIR%
rem 由于mvn本身也是BAT文件,并且其结束时执行了exit命令。要让mvn命令不使当前脚本自动退出,只需要在mvn之前加上call命令
call mvn %MVN_OPT%
goto :begin
:B
cd %BASE_DIR%\%EUREKA_DIR%
call mvn %MVN_OPT%
goto :begin
:C
cd %BASE_DIR%\%CONFIG_DIR%
call mvn %MVN_OPT%
goto :begin
:D
cd %BASE_DIR%\%DEVICE_DIR%
call mvn %MVN_OPT%
goto :begin
:end
exit