批處理打war包

 

****************************************************************************************************************tomcat

@echo off & setlocal ENABLEDELAYEDEXPANSION
net use x: \\19*.1**.**.***\testing 123456 /user:administratormaven

xcopy x:\*.* D:\123 /e /c /q /h /r /y
net use x: /delete單元測試

****************************************************************************************************************測試

::@echo off表示執行了這條命令後關閉全部命令(包括自己這條命令)的回顯。而echo ::off命令則表示關閉其餘全部命令(不包括自己這條命令)的回顯,@的做用就是關閉緊跟其後的一條命令的回顯,
::關於上述例子應該表現的很清楚了,不過還有幾點須要解釋一下:
::pause也是一條命令,做用就是使程序暫停,也就是輸出「請按任意鍵繼續…」的緣由。
::@echo off執行之後,後面全部的命令均不顯示,包括本條命令。
::echo off執行之後,後面全部的命令均不顯示,但本條命令是顯示的。ui

::setlocal enabledelayedexpansion
::設置本地爲延遲擴展。其實也就是:延遲變量,全稱"延遲環境變量擴展", 
::什麼是擴展?
::若是咱們要在咱們的命令中引用一些變量,那麼咱們如何讓CMD在解釋咱們的命令時,能識別出這個變量呢?
::這時咱們就能夠在變量名字兩邊加一個%號,如%name%.當CMD在對讀取咱們的整行
::命令進行格式匹配的時候,就會發現name這個字符兩邊加了%號,就不會把他看成普通字符處理,
::而是會把他看成一個變量處理,變量名叫name!而後CMD就會找到變量名對應的值,用變量名的值替換掉這個變量
::名字(name),(若是變量名不存在 值,就返回空值).再將這個替換好而且匹配的命令執行!這個替換值的過程,
::就叫作變量擴展,說白了就是把變量的名字,用他的值給替換掉後執行!也就是批處 理如何識別一個變量的過程.
::什麼是環境變量擴展?
::例如這個一個BAT
::set var=test
::echo %var%
:: CMD在讀取到echo %var%這句命令後,就會進行匹配操做,它立刻就發現var字符兩邊有%號,這時他就會
:: 把他看成一個變量處理,查看這個var變量名是否是有值,若是有 就用他的值把變量名var給替換掉,
:: 這裏咱們的VAR在上一條命令set var=test中,給var賦值爲test,因此他會用test把%var%這個變量名
:: 替換掉,替換後的結果就爲echo test了.這些步驟都是CMD進行匹配操做的步驟,匹配完後,他再執行
:: echo test這條語句,這時咱們的CMD中就會echo出一個test了.
::什麼是延遲環境變量擴展?
::https://blog.csdn.net/kolamemo/article/details/18036021spa

::net use z: \\IP\baby 
::此命令將共享名爲baby的共享資源映射到z盤.net

****************************************************************************************************************blog

@echo offip

title 產品打包[%DATE% %TIME%]
color 02資源

set "path=D:\work\war\workspace_build\Subversion_bin;D:\work\maven\bin;%path%"

echo 是否更新代碼:
echo 一、更新代碼再打包
echo 二、不更新代碼打包
rem echo 三、發佈程序
echo 0、退出
set /p start_service_no=請輸入:

if "%start_service_no%" == "1" goto :no1
if "%start_service_no%" == "2" goto :no2
if "%start_service_no%" == "3" goto :no3
if "%start_service_no%" == "0" goto :quit

:no1
echo 開始獲取最新代碼文件……

D:
cd D:\work\war\workspace_build\build_haha

 

 

 

:no2
REM 所有的Package一次生成:
D:
cd D:\work\war\workspace_build

echo 開始打包……
rem mvn clean package -X -Dmaven.test.skip=true > 123_bench.log
mvn clean install package -Dmaven.test.skip=true > 123_bench.log
echo 結束打包……

:no3
rem c:
rem cd D:\work\war\workspace_build

rem echo 開始發佈……
rem mvn tomcat:redeploy -Dmaven.test.skip=true > 123_deploy.log
rem echo 結束髮布……

:quit
@pause

****************************************************************************************************************
知識點1:
mvn clean package依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)等7個階段。
mvn clean install依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install等8個階段。
mvn clean deploy依次執行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install、deploy等9個階段。

   由上面的分析可知主要區別以下,

package命令完成了項目編譯、單元測試、打包功能,但沒有把打好的可執行jar包(war包或其它形式的包)佈署到本地maven倉庫和遠程maven私服倉庫
install命令完成了項目編譯、單元測試、打包功能,同時把打好的可執行jar包(war包或其它形式的包)佈署到本地maven倉庫,但沒有佈署到遠程maven私服倉庫
deploy命令完成了項目編譯、單元測試、打包功能,同時把打好的可執行jar包(war包或其它形式的包)佈署到本地maven倉庫和遠程maven私服倉庫  
-Dmaven.test.skip=true 跳過單元測試

知識點2:
set /a 執行數學計算
set /p 提示用戶輸入
@echo off
set /p b=輸入一個數字:
echo %b%
set /a a=2*%b%
echo %b%+%b%=%a%
pause>nul

知識點3:
尖括號 > 功能是將其前面的命令輸出到標準輸出設備的文字追加到該符號後面指定的文本文件結尾

相關文章
相關標籤/搜索