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

use*_*098 8 ant jenkins

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

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

我用自制软件在
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.这里安装ANT 输入代码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

Sla*_*lav 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用户内部使用


Yun*_*hel 7

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

  • 这正是@slav 所说的。有人从全局工具配置中安装了“Ant”,您在这里选择了它。 (2认同)