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