Jenkins构建错误 - 无法运行程序" ant"

时间:2014-10-16 16:36:35

标签: ant jenkins

我已经设置了build.xml来运行一个项目来执行selenium测试用例。我有mac计算机,我可以从终端运行蚂蚁。但是当我尝试从jenkins运行时,我得到以下错误。我在詹金斯指定了Ant家。配置

/usr/local/Cellar/ant/1.9.4/libexec

我用自制软件安装ANT
FATAL: command execution failed.Maybe you need to configure the job to choose one of your Ant installations? java.io.IOException: Cannot run program "ant" (in directory "/Users/Shared/Jenkins/Home/workspace/BaublebarTest"): error=2, No such file or directory at java.lang.ProcessBuilder.processException(ProcessBuilder.java:478) at java.lang.ProcessBuilder.start(ProcessBuilder.java:457) at hudson.Proc$LocalProc.<init>(Proc.java:244) at hudson.Proc$LocalProc.<init>(Proc.java:216) at hudson.Launcher$LocalLauncher.launch(Launcher.java:802) at hudson.Launcher$ProcStarter.start(Launcher.java:380) at hudson.Launcher$ProcStarter.join(Launcher.java:387) at hudson.tasks.Ant.perform(Ant.java:217) at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20) at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:770) at hudson.model.Build$BuildExecution.build(Build.java:199) at hudson.model.Build$BuildExecution.doRun(Build.java:160) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:533) at hudson.model.Run.execute(Run.java:1754) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at hudson.model.ResourceController.execute(ResourceController.java:89) at hudson.model.Executor.run(Executor.java:240) Caused by: java.io.IOException: error=2, No such file or directory at java.lang.UNIXProcess.在此输入代码forkAndExec(Native Method) at java.lang.UNIXProcess.<init>(UNIXProcess.java:53) at java.lang.ProcessImpl.start(ProcessImpl.java:91) at java.lang.ProcessBuilder.start(ProcessBuilder.java:452) ... 15 more Build step 'Invoke Ant' marked build as failure Finished: FAILURE

2 个答案:

答案 0 :(得分:9)

首先,正确的方法

Jenkins将为您安装Ant(以及其他工具)。在全局配置(管理Jenkins)上,通过选择版本和源来配置Ant安装。

然后,当您运行Ant构建步骤时,您可以选择default或您刚刚配置的版本。执行构建时,Jenkins将为您下载,安装和配置该特定版本(仅限Jenkins ),而不会影响操作系统的其余部分。安装只需要在每个节点上进行一次,之后就很快。

default

default版本是Jenkins在您尚未配置正确版本时使用的后备版本。它尝试使用命令行上可用的任何内容,只需从当前工作目录执行ant

你说当你只是在命令行输入ant时,它就适合你,但是你已经意识到Jenkins在jenkins用户下运行,而不是你的登录用户,以及与ANT_HOME类似,Ant的正确路径可能是专门为您的用户配置的。

因此,要解决您的问题,请使用Jenkins正确的方法进行工具安装,或者在操作系统级别为jenkins用户正确配置该工具。

您可以先输入:
sudo su jenkins
ant
并查看它是否适用于jenkins用户

答案 1 :(得分:7)

我没有使用jenkins的终端,但我得到了同样的错误。将Ant版本从默认值更改为Ant可以修复错误。