2016-09-14 11 views
0

ねえ、私はやる男が持って次のバッチファイル/コマンドのWindowsバッチコマンドを解釈することはありません:ジェンキンスは適切

setlocal enableextensions enabledelayedexpansion 
IF EXIST C:\myapp (
set /p pid =< C:\myapp\RUNNING_PID 
echo !pid! 
taskkill /PID !pid! /F 
DEL RUNNING_PID 
rmdir C:\myapp /s /q 
) 
endlocal 
mkdir C:\myapp 
xcopy /E "C:\Program Files (x86)\Jenkins\workspace\myapp\target\universal\myappDist\myapp-1.0" C:\myapp 
start java.exe -Dpidfile.path=C:\myapp\RUNNING_PID -Dhttp.port=3000 -cp C:\myapp\lib\* play.core.server.NettyServer 

しかし、ジェンキンスはそれを正しく解釈しません。常に次のコードを実行しようとします。

setlocal enableextensions enabledelayedexpansion 
IF EXIST C:\myapp (
set /p pid = 0<C:\myapp\RUNNING_PID 
echo !pid! 
taskkill /PID !pid! /F 
DEL RUNNING_PID 
rmdir C:\lexia /s /q 
) 

残りのコード行は正しく解釈されます。私はここで何が起こっているのか分からない。

誰かが私にヒントを与えることを望みます。

ありがとうございます!

答えて

1

私はこれを交換することにより開始する:

setlocal enableextensions enabledelayedexpansion 
IF EXIST C:\myapp (
set /p pid =< C:\myapp\RUNNING_PID 
echo !pid! 
taskkill /PID !pid! /F 
DEL RUNNING_PID 
rmdir C:\myapp /s /q 
) 
endlocal 

と:あなたの応答のための

setlocal enableextensions disabledelayedexpansion 
IF EXIST C:\myapp\ (
    set/p pid=<C:\myapp\RUNNING_PID 
    echo %pid% 
    taskkill /PID %pid% /F 
    DEL RUNNING_PID 
    rmdir C:\myapp /s /q 
) 
+0

感謝を!実際にはうまくいきましたが、問題は完全に異なるもので、なぜ機能しなかったのですか。しかし、スクリプトのエコーは、あなたが提案したもののために、上記のものでした!私の問題を解決してスクリプトが動いていたにもかかわらず、エコーはまだpropleryではなかったので! – fr33g