bat自動上傳Maven jar包
Bat 自動上傳Maven jar包
批處理相關處理
setlocalenabledelayedexpansion變數延遲
@echo off
set a=4
set a=5&echo !a!
pause
結果為4
@echo off
setlocal enabledelayedexpansion
set a=4
set a=5&echo !a!
pause
結果為5
例子:
setlocal EnableDelayedExpansion
for %%i in (*.jar) do ( //遍歷資料夾以.jar結尾的
set name=%%i //name賦值為filename
set jarName=!name:.jar=! //jarName為去除.jar的string
echo !jarName! //輸出
)
Pause//等待
set /p channelName= //接收輸入的資料,賦值給channelName
echo !channelName! //輸出
setlocal EnableDelayedExpansion
set /p channelName= //輸入channelName
set /p version= //輸入版本號
set path=%cd% //獲取當前目錄路徑
for %%i in (*.jar) do (
set name=%%i
set jarName=!name:.jar=!
set fileNamePath=!path!\!name! //拼接全路徑.jar
set fileNamePath=!fileNamePath: =!
echo !channelName!
echo !version!
echo !name!
echo !jarName!
echo !path!
echo !fileNamePath!
//執行mvn上傳
E:\mytools\apache-maven-3.3.9-bin\apache-maven-3.3.9\bin\mvndeploy:deploy-file -DgroupId=cn.gyyx.sdk.!channelName! -DartifactId=!jarName!-Dversion=!version! -Dpackaging=jar -Dfile=!fileNamePath!-Durl=http://192.168.6.182/content/repositories/AndroidMaven/-DrepositoryId=AndroidMaven
)
Pause
新增文字檔案
-----------------
echo^<dependency^>^<groupId^>cn.gyyx.sdk.%channelName%^</groupId^>^<artifactId^>%%~ni^</artifactId^>^<version^>%version%^</version^>^</dependency^>>>1.txt
Echo %name%>>1.txt變數name的值追加到1.txt中
^< 特殊字元轉義文字中<
Maven相關配置
1.下載Maven
2.配置環境變數
MAVEN_HOME
E:\mytools\apache-maven-3.3.9-bin\apache-maven-3.3.9
Path
;%MAVEN_HOME%\bin
3.cmd執行mvn –v即可測試maven是否配置完畢。
bat檔案命令
setlocal EnableDelayedExpansion
set /p channelName=
set /p version=
for %%i in (*.jar) do (
set name=%%i
set jarName=!name:.jar=!
E:\mytools\apache-maven-3.3.9-bin\apache-maven-3.3.9\bin\mvn deploy:deploy-file -DgroupId=cn.gyyx.sdk.%channelName% -DartifactId=%%~ni -Dversion=%version% -Dpackaging=jar -Dfile=%cd%\%%i -Durl=http://192.168.6.182/content/repositories/AndroidMaven/ -DrepositoryId=AndroidMaven
echo ^<dependency^>^<groupId^>cn.gyyx.sdk.%channelName%^</groupId^>^<artifactId^>%%~ni^</artifactId^>^<version^>%version%^</version^>^</dependency^>>>1.txt
)
pause