【问题标题】:How to Execute Build command in jenkins(Ubuntu)如何在詹金斯(Ubuntu)中执行构建命令
【发布时间】:2020-01-03 10:19:19
【问题描述】:

我需要将一个简单的 selenium 脚本与 Jenkins 集成。 有人可以帮我在构建部分获取一个 shell 脚本代码来更新。

目前,我尝试使用返回以下错误的 run.bat 文件。

Building in workspace /home/mythos/loremine/Automation_Workspace/JenkinsDemo
[JenkinsDemo] $ cmd /c call /tmp/jenkins2455301809650179322.bat
FATAL: command execution failed
java.io.IOException: error=2, No such file or directory
    at java.lang.UNIXProcess.forkAndExec(Native Method)
    at java.lang.UNIXProcess.<init>(UNIXProcess.java:247)
    at java.lang.ProcessImpl.start(ProcessImpl.java:134)
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
Caused: java.io.IOException: Cannot run program "cmd" (in directory "/home/mythos/loremine/Automation_Workspace/JenkinsDemo"): error=2, No such file or directory
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
    at hudson.Proc$LocalProc.<init>(Proc.java:250)
    at hudson.Proc$LocalProc.<init>(Proc.java:219)
    at hudson.Launcher$LocalLauncher.launch(Launcher.java:937)
    at hudson.Launcher$ProcStarter.start(Launcher.java:455)
    at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:109)
    at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:66)
    at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:741)
    at hudson.model.Build$BuildExecution.build(Build.java:206)
    at hudson.model.Build$BuildExecution.doRun(Build.java:163)
    at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:504)
    at hudson.model.Run.execute(Run.java:1853)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    at hudson.model.ResourceController.execute(ResourceController.java:97)
    at hudson.model.Executor.run(Executor.java:427)
Build step 'Execute Windows batch command' marked build as failure
Finished: FAILURE

【问题讨论】:

    标签: java selenium ubuntu jenkins


    【解决方案1】:

    在 Ubuntu 中,您需要使用 Execute Shell 而不是 Execute Windows Batch Command

    【讨论】:

    • 我们可以在.sh文件中使用相同的代码Java –cp bin;lib/* org.testng.TestNG testNg.xml吗?
    • Running as SYSTEM Building in workspace /home/mythos/loremine/Automation_Workspace/JenkinsDemo [JenkinsDemo] $ /bin/sh -xe /tmp/jenkins959706295364739197.sh + run.sh /tmp/jenkins959706295364739197.sh: 2: /tmp/jenkins959706295364739197.sh: run.sh: not found Build step 'Execute shell' marked build as failure Finished: FAILURE 中出现控制台错误消息。选择 Execute Shell,并将 run.bat 更新为 run.sh
    • 你不需要制作run.sh文件,只需在Execute shell上输入java –cp bin;lib/* org.testng.TestNG testNg.xml
    • 但是,为了使其工作,必须在终端中进行以下操作:cd /home/mythos/loremine/Automation_Workspace/JenkinsDemojava –cp bin;lib/* org.testng.TestNG testNg.xml
    • 嗨谢谢 :-)。执行时我仍然收到以下错误。 [JenkinsDemo] $ /bin/sh -xe /tmp/jenkins7505565238733559593.sh + cd /home/mythos/loremine/Automation_Workspace/JenkinsDemo + java –cp bin Error: Could not find or load main class –cp Build step 'Execute shell' marked build as failure请指教
    【解决方案2】:

    在您的命令中删除 /,如下所示。它可能会解决您的问题。

     cmd /c call tmp/jenkins2455301809650179322.bat
    

    【讨论】:

    • 我没有在任何地方提供命令。唯一更新的代码是 run.bat 文件中的Java –cp bin;lib/* org.testng.TestNG testNg.xml
    • 在 jenkins 配置中,它看起来像。请尝试更新作业配置
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-03
    • 2021-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多