2012-08-10 43 views
4

我在Windows上設置Jenkins以照顧我一直在處理的Windows項目的構建。到現在爲止,我剛剛在當地建設。我有一個執行構建的批處理文件,最終生成一些msi安裝程序。詹金斯應對批處理文件參數中的空格

某些項目包含運行批處理文件的後期構建步驟。批處理文件的參數有時包含空格。從命令提示符運行我的構建批處理文件時,這不是問題。

然而,詹金斯似乎有一個問題,這一點 - 我得到的錯誤,如

「找不到文件:C:\ PROGRAM」

我困惑的是,爲什麼會發生錯誤時詹金斯觸發批處理,但不是當我手動運行它 - 任何想法?

回答

3

對於包含空格的參數,請用雙引號將其包裝。例如:

WRONG:PROCESS_FILE.EXE C:\ Program Files文件\這FILE.TXT

正確:PROCESS_FILE.EXE 「C:\ Program Files文件\這FILE.TXT」

0

賈森提到,你需要用引號傳遞你的參數和路徑。

另外,請檢查構建日誌並查看您正在使用的引用類型。根據傳遞的位置,您可能需要單引號或雙引號或某種轉義字符。

如果您想查看Jenkins爲外部命令或事前/事後構建事件運行的實際批處理文件,請檢查構建日誌並在編輯器中加載臨時批處理文件以查看它實際的外觀。有時這是調試你的構建所必需的。