2016-01-22 137 views
0

我想使用Jenkins的這些批處理命令在Glassfish中部署WAR。 :Jenkins在glassfish中部署WAR

這是我如何部署具有Batch命令,WAR: H:\工作空間\ XXXX> 「C:\ glassfish3 \的glassfish \ BIN \ asadmin.bat」, 「取消部署」 爲名稱的操作數輸入值> XXXX

H:\workspace\xxxx>"C:\glassfish3\glassfish\bin\asadmin.bat" "deploy" 
Enter the value for the path operand> H:\xxxx-sources\xxxx.war 
Application deployed with name xxxx. 
Command deploy executed successfully. 

在詹金斯,我在構建添加一個批處理命令與:

cd "C:\glassfish3\glassfish\bin\" 
asadmin.bat "undeploy" 
XXXX 
asadmin.bat "deploy" 
H:\XXXX sources\XXXX.war 

我有這樣的錯誤:

Démarré帕L'utilisateur匿名建築上主在工作區的 C:\ Documents和 設置\ XXXX.XXXX.jenkins \作業\ deployerXXXXCore \工作區 [工作空間] $ SH -xe C:\ DOCUME〜1 \ XXXX 〜1.XXXX \ LOCALS〜1 \ Temp \ hudson2065869118895930371.sh 系統找不到指定的文件FATAL:L'exécutionde la commande aéchoué。 java.io.IOException:無法運行程序「sh」(位於 目錄「C:\ Documents and Settings \ XXXX.XXXX.jenkins \ jobs \ deployerXXXX \ workspace」中): CreateProcess error = 2,系統找不到文件 java.lang.ProcessBuilder.start(ProcessBuilder.java:460)at hudson.Proc $ LocalProc。(Proc.java:244)at hudson.Proc $ LocalProc。(Proc.java:216)at hudson.Launcher $ LocalLauncher.launch(Launcher.java:802)在 hudson.Launcher $ ProcStarter.start(Launcher.java:380)在 hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:97) 在 哈德森.tasks.CommandInterpreter.perform(CommandInterpreter.java:66) at hudson.tasks。 BuildStepMonitor $ 1.perform(BuildStepMonitor.java:20) 在 hudson.model.AbstractBuild $ AbstractBuildExecution.perform(AbstractBuild.java:770) 在hudson.model.Build $ BuildExecution.build(Build.java:199)在 hudson.model.Build $ BuildExecution.doRun(Build.java:160)at hudson.model.AbstractBuild $ AbstractBuildExecution.run(AbstractBuild.java:533) at hudson.model.Run.execute(Run.java:1759)在 hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)at hudson.model.ResourceController.execute(ResourceController.java:89) at hudson.model.Executor.run(Executor.java:240)由: java.io.IOException:CreateProcess error = 2,系統找不到 文件java.lang.ProcessImpl.create(Native Method)at java.lang.ProcessImpl。(ProcessImpl.java:81)at java.lang.ProcessImpl.start(ProcessImpl.java:30)at java.lang。 ProcessBuilder.start(ProcessBuilder.java:453)... 15多個 構建步驟「執行器腳本聯合國殼」標記建立成品失敗 :未能

回答

1

似乎您試圖在詹金斯執行腳本使用shell腳本執行,它僅適用於類Unix系統。嘗試在Jenkins作業中對Windows批處理執行相同的操作。

您應該根據Jenkins guide選擇'執行Windows批處理命令'。

+0

是的。謝謝。 – florian