2016-01-21 137 views
0

我試圖運行與Managed Script Plugin運行從詹金斯

當我運行該文件.bat文件,有錯誤:

FailedConsole Output 

Started by user anonymous 
[EnvInject] - Loading node environment variables. 
Building in workspace C:\Users\*****\.hudson\jobs\dfs\workspace 
[workspace] $ cmd /c call C:\apache-tomcat-7.0.63\temp\hudson5830491027958954227.bat 

C:\Users\*****\.hudson\jobs\dfs\workspace>call "C:\apache-tomcat-7.0.63-jenkins\bin\startup.bat" 
Files\Java\jdk1.7.0_71\bin\java.exe"" was unexpected at this time. 
Build step 'Execute managed windows batch' marked build as failure 
Finished: FAILURE 

同樣的錯誤,當我調用java類從詹金斯。在java類是:

Runtime.getRuntime().exec("cmd /c start C:\\apache-tomcat-7.0.63-jenkins\\bin\\startup.bat"); 

任何想法? 我只是想啓動/停止Tomcat

回答

0

您正在運行

cmd /c call C:\apache-tomcat-7.0.63\temp\hudson5830491027958954227.bat 

「通話」只有在一個批處理文件在命令窗口中沒有任何意義。嘗試跳過命令行中的「調用」。

+0

相同情況: '由用戶匿名發起 [EnvInject] - 加載節點環境變量。 建立在工作區C:\ Users \ ***** \。hudson \ jobs \ dfs \ workspace [workspace] $ cmd/c call C:\ apache-tomcat-7.0.63 \ temp \ hudson6306847186713865408.bat C:\ Users \ ****** \。hudson \ jobs \ dfs \ workspace>「C:\ apache-tomcat-7.0.63-jenkins \ bin \ startup.bat」 Files \ Java \ jdk1.7.0_71 \ bin \ java.exe「」在這個時候是意外的。 構建步驟'執行託管窗口批處理'標記爲構建失敗 完成:失敗' – Rumen

0

首先,我認爲與Jenkins一起執行批處理/ shell腳本的最好方法是使用它們的插件。

關於你的情況,你正在使用的插件打開一個cmd來執行批處理腳本,所以你不需要指定如何打開它,C:\apache-tomcat-7.0.63-jenkins\bin\startup.bat就足夠了。在java示例中不要使用start。

+0

是的,我嘗試使用jenkins中的默認插件 - 相同的結果。 如果這個插件打開「cmd」,爲什麼不用這個'C:\ apache-tomcat-7.0.63-jenkins \ bin \ startup.bat'? 現在,我通過CMD運行它,但有錯誤:'的CATALINA_HOME環境變量未正確定義 需要這個環境變量來運行這個program' 如果我設置CATALINA_HOME - 當我開始tomcat6中,而不是tomcat7,每tomcat從catalina_home中的路徑開始 - 所以這將是問題 – Rumen

+0

jenkins cmd(或者任何在這個意義上的cmd)都以它自己的上下文開始,它將變量存儲爲CATALINA_HOME。如果在腳本的開始處設置CATALINA_HOME,則在cmd退出後它不會出現。 –