'Nant' 作为 Jenkins 上无法识别的命令 Mac Slave

'Nant' as not recognized command on Jenkins Mac Slave

我创建了一个 Jenkins 的主从结构设置,在 windows 服务器上有主服务器,加上几个 windows 从服务器和一个 Mac-从服务器。 流程是这样的,

  1. Jenkins shell 脚本触发 shell 命令 (sh sample.command) [这在 windows(using win-bash) 和mac 节点.......]

The first step where it triggers the shell script is working fine on both windows and mac slave.

#!/bin/bash
echo “This is a shell script acting as a middleware to trigger the NAnt....”
echo "Calling NAnt...."
nant    

2.Now,sample.command 有一个触发 nant 命令的代码,它在 mac slave 上不起作用并给我一个错误 : 南特:找不到命令

3.The NAnt 通过 brew 安装在 Mac-slave 上,当我从 Mac [=40] 触发这个 shell 脚本 sample.command =]hine,它工作正常并执行 nant 命令,但不能通过 jenkins 工作。

任何帮助将不胜感激,在此先感谢。

我能够通过在 shell 脚本的开头设置 $PATH 变量来解决这个问题。刚刚在 shell 脚本中添加了以下行,

export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/share/dotnet/bin

这里提到的路径在其他机器上可能不同,我所做的是,我在从 Mac 机器调用 shell 时检查了 $PATH 并复制粘贴并且有效。