Cygwin安裝在我的windows中,並且能夠使用cmd提示符執行sh文件。 同樣的Cygwin插件已經安裝在jenkins中,它也運行在windows中。 我在jenkins中創建了一個工作構建step-> execute shell命令我正在執行我正在面臨的工作異常時執行的命令爲sh /cygdrive/d/539707/data/getchanges/gymBuild.sh。如何從windows上運行的jenkins執行sh文件
注1:在詹金斯/配置/下殼我沒有提到任何路徑
工作空間] $ SH -xe d:\ 539707 \ Tomcat的7.0.12 \ TEMP \ hudson4624102689815543789.sh致命錯誤: 命令執行失敗java.io.IOException:無法運行程序「sh」 (在目錄「C:\ Users \ 539707.jenkins \ jobs \ Test_Gym \ workspace」中): CreateProcess error = 2,系統找不到在 指定的文件java.lang.ProcessBuilder.start(ProcessBuilder.java:1047)at hudson.Proc $ LocalProc。(Proc.java:244)at hudson.Proc $ L ocalProc(Proc.java:216)在 hudson.Launcher $ LocalLauncher.launch(Launcher.java:815)在 hudson.plugins.cygpath.CygpathLauncherDecorator $ 1.launch(CygpathLauncherDecorator.java:66) 在hudson.Launcher $ ProcStarter.start(Launcher.java:381)在 hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:95) 在 hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:64) 在hudson.tasks.BuildStepMonitor $ 1.perform(BuildStepMonitor.java:20) 在 hudson.model.AbstractBuild $ AbstractBuildExecution.perform(AbstractBuild.java:782) 在hudson.model.Build $ BuildExecution.build(Build.java:205)在 哈德森.model.Build $ BuildExecution.doRun(Build.java :162)at hudson.model.AbstractBuild $ AbstractBuildExecution.run(AbstractBuild.java:534) at hudson.model.Run.execute(Run.java:1738)at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java :43)在 hudson.model.ResourceController.execute(ResourceController.java:98) 在hudson.model.Executor.run(Executor.java:410)產生的原因: java.io.IOException的:CreateProcess的錯誤= 2,系統無法找到在java.lang.ProcessImpl.create(Native Method)指定的 文件 java.lang.ProcessImpl。(ProcessImpl.java:385)at java.lang.ProcessImpl.start(ProcessImpl.java:136 )在 java.lang.ProcessBuilder.start(ProcessBuilder.java:1028)... 16更多 構建步驟'執行殼」標記構建爲失敗
成品:FAILURE
注2:在詹金斯/配置/下殼我提到C:\ cygwin的\ BIN \ mintty.exe
之後,下面是輸出
$ C:\ cygwin的\ BIN \ cygpath -w C:\ cygwin的\ BIN \ mintty.exe [工作空間] $ C:\ cygwin的\ BIN \ mintty.exe -xe d:\ 539707 \ tomcat-7.0.12 \ temp \ hudson4745164988293910592.sh /usr/bin/mintty:未知選項'-x'嘗試'--help'獲取更多 信息。構建步驟「執行shell」標記建立爲故障
成品:未能
請建議如何從詹金斯在Windows
mintty是不是一個外殼,它是一個TE終端模擬器。作爲一個shell,你必須指定your_cygwin_home \ bin \ bash.exe的路徑。看看[Cygpath Plugin](https://wiki.jenkins-ci.org/display/JENKINS/Cygpath+Plugin),它可能與你的情況有關。 – izzekil